Skip to main content
POST
/
:projectId
/
api
/
v7
/
auth
/
send-verification-email
Send Verification Email
curl --request POST \
  --url https://api.replyke.com/api/v6/:projectId/api/v7/auth/send-verification-email \
  --header 'Content-Type: application/json' \
  --data '
{
  "mode": {},
  "tokenFormat": {},
  "tokenLength": 123,
  "redirectUrl": "<string>"
}
'
{
  "success": true
}
Sends a verification email to the authenticated user’s registered email address. The token or link expires after 5 minutes. Requires a valid user access token. Returns immediately with { success: true } if the user is already verified.

Body Parameters

All parameters are optional.
mode
"code" | "link"
default:"\"code\""
Delivery mode.
  • "code" — The email contains a short token the user types into your app. Call the Verify Email endpoint to complete verification.
  • "link" — The email contains a clickable button. When clicked, the server verifies the token and redirects the user (or renders a hosted confirmation page).
tokenFormat
"hex" | "numeric" | "alpha" | "alphanumeric"
default:"\"hex\""
Character set used to generate the token.
ValueExampleNotes
"hex"a3f9c2...64-character hex string. tokenLength is ignored.
"numeric"048291Digits only (0–9). Good for OTP-style inputs.
"alpha"GXRTPKUppercase letters only (A–Z).
"alphanumeric"B4KR9ZUppercase letters and digits.
tokenLength
number
default:"6"
Length of the generated token. Must be an integer between 4 and 12. Ignored when tokenFormat is "hex".
redirectUrl
string
A URL to redirect the user to after they click the verification link. Only used when mode is "link".On success the query parameter ?verified=true is appended. On failure, ?verified=false&error=invalid-or-expired-token is appended instead.If omitted, the server renders a hosted success/error page.

Response

success
boolean
true when the request is processed without a server error (including when the user is already verified).

Error Codes

CodeStatusDescription
auth/not-password-user400The authenticated user does not have an email/password account.
Each call generates a new token. A previous unused token remains valid in Redis until it either expires or the new one is consumed first.

See Also