---
title: "Verify email and authentication tickets"
method: GET
path: "/verify"
tags: ["verification"]
---

# Verify email and authentication tickets

`GET /verify`

Verify tickets created by email verification, magic link authentication, or password reset processes. Redirects the user to the appropriate destination upon successful verification.

## Query parameters

- `ticket` string, required — Ticket
- `type` 'emailVerify' | 'emailConfirmChange' | 'signinPasswordless' | 'passwordReset' — Type of the ticket
- `redirectTo` string, uri, required — Target URL for the redirect
- `codeChallenge` string

## Response `default`

An error occurred while processing the request

- ErrorResponse — Standardized error response
  - `status` integer, required — HTTP status error code
  - `message` string, required — Human-friendly error message
  - `error` 'default-role-must-be-in-allowed-roles' | 'disabled-endpoint' | 'disabled-user' | 'user-already-exists' | 'email-already-verified' | 'forbidden-anonymous' | 'internal-server-error' | 'invalid-email-password' | 'invalid-request' | 'locale-not-allowed' | 'password-too-short' | 'password-in-hibp-database' | 'redirectTo-not-allowed' | 'role-not-allowed' | 'signup-disabled' | 'unverified-user' | 'user-not-anonymous' | 'invalid-pat' | 'invalid-refresh-token' | 'invalid-ticket' | 'disabled-mfa-totp' | 'no-totp-secret' | 'invalid-totp' | 'mfa-type-not-found' | 'totp-already-active' | 'invalid-state' | 'oauth-token-echange-failed' | 'oauth-profile-fetch-failed' | 'oauth-provider-error' | 'invalid-otp' | 'otp-too-many-attempts' | 'cannot-send-sms' | 'provider-account-already-linked', required — Error code identifying the specific application error

## Other responses

- `302` — Redirect response

---

[API](https://skmtc.net/nhost/apis/nhost-authentication-api.md) · [All operations](https://skmtc.net/nhost/apis/nhost-authentication-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/nhost/nhost-authentication-api/versions/a5c0d88b55c4/schema)
