# Get authentication OTP via email

HTTP API `POST` `/auth/create-user-otp`

To start using the API as a user you need to have a registered user account. The first thing you need to do to authenticate is to request an OTP code, in this case we'll demonstrate it using an email.

If you are a partner company whose application signs users in through TNID, your backend can first mint a `branding_token` for this destination (`POST /auth/otp-branding-token`, authenticated as your company) and pass it here: the email then names your company as what the code is for, with TNID still named as the sender. Without a token the plain TNID message is sent. A token for another destination, an expired one, or a company without branding enabled is refused with a 400.

## Request

```json
{
  "email": "test1@email.com"
}
```

## Response

**HTTP Response Code:** 200

```json
{
  "expires_at": "2026-01-15T09:00:00.000000Z",
  "next_otp_at": "2026-01-15T09:00:01.000000",
  "otp_status": "OTP sent",
  "remaining_otp_attempts": 5
}
```
