Documentation Index
Fetch the complete documentation index at: https://kawax.biz/llms.txt
Use this file to discover all available pages before exploring further.
Introduction
Email verification confirms that a user actually owns the email address they registered with. Laravel provides built-in services for sending and verifying verification links, so you can implement this flow without rebuilding it from scratch.If you use a Laravel starter kit, authentication views and email verification flow are already scaffolded. If you implement authentication manually, define the model, routes, and views described on this page.
Prepare the model and database
Implement MustVerifyEmail
Make sure yourApp\Models\User model implements Illuminate\Contracts\Auth\MustVerifyEmail.
Registered event after registration succeeds.
Check the email_verified_at column
Yourusers table must include an email_verified_at column. Laravel’s default 0001_01_01_000000_create_users_table.php migration already includes it.
Routing (three required routes)
Email verification requires three routes:verification.notice, verification.verify, and verification.send.
Define the verification notice route (verification.notice)
Return a page that asks unverified users to click the verification link sent by email.
Define the verification handler route (verification.verify)
Validate the signed URL and mark the user’s email as verified when they click the link.
Protect routes
Use theverified middleware to allow only verified users to access specific routes. Pair it with auth in most cases.
verification.notice route.
Customization
Customize verification email content by registeringVerifyEmail::toMailUsing in the boot method of AppServiceProvider.
Events
Laravel dispatches theIlluminate\Auth\Events\Verified event during email verification. With starter kits this happens automatically, and with manual implementations you can listen for or dispatch verification-related events as needed.