> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flowmaticai.in/llms.txt
> Use this file to discover all available pages before exploring further.

# POST /api/auth/register — Create a Flowmatic Account

> POST /api/auth/register — Create a new Flowmatic account with email, password, and full name. A verification OTP is sent to your email on success.

Use this endpoint to create a new Flowmatic account. You provide your email address, a secure password, and your full name. Registration does not immediately return tokens — instead, a one-time passcode (OTP) is dispatched to your email address, which you must verify before you can begin making authenticated API requests.

<Note>
  After a successful registration call, Flowmatic sends a 6-digit OTP to the email address you provided. You must submit that code to [POST /api/auth/verify-email](/api-reference/auth/verify-email) before your account is activated and tokens are issued.
</Note>

## Endpoint

```
POST https://api.flowmatic.io/api/auth/register
```

## Request Body

<ParamField body="email" type="string" required>
  The email address for your new Flowmatic account. This must be a valid, reachable address because the OTP verification code is delivered here. Each email address can only be registered once.
</ParamField>

<ParamField body="password" type="string" required>
  The password you want to set for your account. Choose a strong password of at least 8 characters. Flowmatic stores passwords using a secure hashing algorithm — they are never stored in plain text.
</ParamField>

<ParamField body="fullName" type="string" required>
  Your full name as you would like it associated with your Flowmatic account. This is used for display purposes within the platform and in any notification emails sent to you.
</ParamField>

## Example Request

<Tabs>
  <Tab title="Request">
    ```bash theme={null}
    curl -X POST https://api.flowmatic.io/api/auth/register \
      -H "Content-Type: application/json" \
      -d '{
        "email": "alice@example.com",
        "password": "mySecurePass123",
        "fullName": "Alice Johnson"
      }'
    ```
  </Tab>

  <Tab title="Request Body">
    ```json theme={null}
    {
      "email": "alice@example.com",
      "password": "mySecurePass123",
      "fullName": "Alice Johnson"
    }
    ```
  </Tab>

  <Tab title="Response">
    ```json theme={null}
    {
      "message": "Registration successful. Please check your email for a verification OTP.",
      "email": "alice@example.com"
    }
    ```
  </Tab>
</Tabs>

## Response Fields

<ResponseField name="message" type="string">
  A human-readable confirmation that registration was accepted and that an OTP has been dispatched to your email address.
</ResponseField>

<ResponseField name="email" type="string">
  The email address that the OTP was sent to. Use this value when calling [POST /api/auth/verify-email](/api-reference/auth/verify-email) to confirm your identity.
</ResponseField>

## Next Steps

Once you have received your OTP, proceed to the [Verify Email](/api-reference/auth/verify-email) endpoint to activate your account and obtain your `accessToken` and `refreshToken`. If the OTP expires or does not arrive, you can request a new one via [Resend OTP](/api-reference/auth/resend-otp).
