Skip to main content
GET
Send OTP

Send OTP

Sends a one-time password to the provided email address for passwordless authentication. The customer enters the OTP in the portal to obtain a bearer token without needing their full password. This supports magic-link and OTP-based sign-in flows.

Authentication

No authentication required. This is a public endpoint.

Query Parameters

email
string
required
The email address of the customer to send the OTP to. URL-encode this value.
businessId
number
required
The numeric identifier of the location. Ensures the OTP email uses the correct branding and is associated with the right space.

Response

Returns an ActionConfirmation envelope. As with the password-reset flow, the response does not reveal whether the email address is registered.
WasSuccessful
boolean
true when the OTP was dispatched (or when no account was found — intentionally the same to prevent enumeration).
Value
string | null
Usually null.
Status
number
HTTP-style status code mirrored in the body. 200 on success.
Message
string | null
Human-readable message. Usually null on success.
Errors
any
Validation errors. null on success.

Example Response

TypeScript Integration

Usage in Portal

Error Responses

400 Bad Request
error
The email or businessId parameter is missing or malformed.
429 Too Many Requests
error
OTP requests are rate-limited. The customer must wait before requesting another code.