---
title: "Users are allowed to register from the application, but they will need an authorization token from the corresponding application."
method: POST
path: "/v2/users/sign-up-with-email/"
tags: ["Auth"]
---

# Users are allowed to register from the application, but they will need an authorization token from the corresponding application.

`POST /v2/users/sign-up-with-email/`

## Request

- Base URL: `https://api.chat.ethora.com`
- URL: `https://api.chat.ethora.com/v2/users/sign-up-with-email/`
- Auth: none required

**Auth**: None (appId required; legacy App JWT accepted)

Provide `appId` in the request body to resolve app context. Legacy `Authorization` app token is also accepted for backward compatibility.

## Request body

- object
  - `email` string, required: New account's email address. Used for login, email verification, and password reset.
  - `firstName` string, required: Given name shown in chat / profile. Required.
  - `lastName` string: Family name shown in chat / profile. Required.
  - `password` string, required: Initial account password. 8+ characters recommended.
  - `cfToken` string, required: Cloudflare Turnstile token from the sign-up form, if the app has bot protection enabled. Optional otherwise.
  - `utm` string: UTM-style attribution string captured at signup. Free-form, used for analytics only.
  - `appId` string: Application id used to resolve tenant/app context.

## Response `200`

```
{
  ok: boolean,
}
```

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `422`: ``` { error: string } ```
- `500`: Internal Server Error

---

[API](https://skmtc.dev/ethora/apis/platform-api.md) · [All operations](https://skmtc.dev/ethora/apis/platform-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ethora/apis/platform-api/revisions/01b6e64378ee?raw)
