Setting up Account Activation and E-Mail Verification
Mail courier
To send emails, you need to setup the mail courier
To set up email verification, your Identity Schema must have an email in its traits and add
{
"ory.sh/kratos": {
"verification": {
"via": "email"
}
}
}
to it, for example:
{
"$id": "https://schemas.ory.sh/presets/kratos/quickstart/email-password/identity.schema.json",
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Person",
"type": "object",
"properties": {
"traits": {
"type": "object",
"properties": {
"email": {
"type": "string",
"format": "email",
"title": "E-Mail",
"minLength": 3,
+ "ory.sh/kratos": {
+ "verification": {
+ "via": "email"
+ }
+ }
}
}
}
}
}
Email verification supports sending out a recovery link to an email address. For this to work, you must have the courier SMTP
connection configured in your Ory Kratos Config File (kratos serve -c /home/kratos/.kratos.yml
):
# Ory Kratos Config File
+courier:
+ smtp:
+ connection_uri: smtps://username:password@smtp-server:1234/
# ...
You also need to enable verification:
selfservice:
flows:
# login ...
# registration...
+ verification:
+ enabled: true
+ ui_url: http://127.0.0.1:4455/verification
# ...
That all that's needed! For more information on implementing the UI and details about the payloads, head over to the Email and Phone Verification and Account Activation Documentation!