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

# Send an email sign-in OTP

> Sends a 6-digit code that can be exchanged at POST /api/auth/sessions
with `method: otp`.
The response is intentionally generic and does not reveal whether a user
already exists. The code expires after 5 minutes.




## OpenAPI

````yaml https://raw.githubusercontent.com/InsForge/InsForge/main/openapi/auth.yaml post /api/auth/email/send-otp
openapi: 3.0.3
info:
  title: Insforge Authentication API
  version: 2.0.0
  description: Authentication endpoints with separated auth and profile tables
servers: []
security: []
paths:
  /api/auth/email/send-otp:
    post:
      tags:
        - Client
      summary: Send an email sign-in OTP
      description: |
        Sends a 6-digit code that can be exchanged at POST /api/auth/sessions
        with `method: otp`.
        The response is intentionally generic and does not reveal whether a user
        already exists. The code expires after 5 minutes.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - email
              properties:
                email:
                  type: string
                  format: email
                  example: user@example.com
      responses:
        '202':
          description: The sign-in code was accepted for delivery
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  message:
                    type: string
                    example: >-
                      If sign-in is available for this email, we have sent a
                      verification code.
        '400':
          description: Invalid request
        '429':
          description: Too many sign-in code requests

````