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

# Sign in with email and password

> Sign in with email and password



## OpenAPI

````yaml /api/openapi.json post /api/auth/sign-in/email
openapi: 3.1.0
info:
  description: HTTP API for the Rootprint log management platform.
  title: Rootprint API
  version: 0.3.4
servers:
  - description: Rootprint API
    url: https://example.com
security:
  - cookieAuth: []
paths:
  /api/auth/sign-in/email:
    post:
      tags:
        - Authentication
      summary: Sign in with email and password
      description: Sign in with email and password
      operationId: signInEmail
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                callbackURL:
                  description: Callback URL to use as a redirect for email verification
                  type:
                    - string
                    - 'null'
                email:
                  description: Email of the user
                  type: string
                password:
                  description: Password of the user
                  type: string
                rememberMe:
                  default: true
                  description: >-
                    If this is false, the session will not be remembered.
                    Default is `true`.
                  type:
                    - boolean
                    - 'null'
              required:
                - email
                - password
              type: object
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                description: Session response when idToken is provided
                properties:
                  redirect:
                    enum:
                      - false
                    type: boolean
                  token:
                    description: Session token
                    type: string
                  url:
                    nullable: true
                    type: string
                  user:
                    $ref: '#/components/schemas/User'
                    type: object
                required:
                  - redirect
                  - token
                  - user
                type: object
          description: Success - Returns either session details or redirect URL
        '400':
          content:
            application/json:
              schema:
                properties:
                  message:
                    type: string
                required:
                  - message
                type: object
          description: >-
            Bad Request. Usually due to missing parameters, or invalid
            parameters.
        '401':
          content:
            application/json:
              schema:
                properties:
                  message:
                    type: string
                required:
                  - message
                type: object
          description: Unauthorized. Due to missing or invalid authentication.
        '403':
          content:
            application/json:
              schema:
                properties:
                  message:
                    type: string
                type: object
          description: >-
            Forbidden. You do not have permission to access this resource or to
            perform this action.
        '404':
          content:
            application/json:
              schema:
                properties:
                  message:
                    type: string
                type: object
          description: Not Found. The requested resource was not found.
        '429':
          content:
            application/json:
              schema:
                properties:
                  message:
                    type: string
                type: object
          description: >-
            Too Many Requests. You have exceeded the rate limit. Try again
            later.
        '500':
          content:
            application/json:
              schema:
                properties:
                  message:
                    type: string
                type: object
          description: >-
            Internal Server Error. This is a problem with the server that you
            cannot fix.
      security:
        - bearerAuth: []
components:
  schemas:
    User:
      properties:
        banExpires:
          format: date-time
          readOnly: true
          type: string
        banReason:
          readOnly: true
          type: string
        banned:
          default: false
          readOnly: true
          type: boolean
        createdAt:
          default: Generated at runtime
          format: date-time
          type: string
        email:
          type: string
        emailVerified:
          default: false
          readOnly: true
          type: boolean
        id:
          type: string
        image:
          type: string
        name:
          type: string
        role:
          readOnly: true
          type: string
        updatedAt:
          default: Generated at runtime
          format: date-time
          type: string
      required:
        - name
        - email
        - createdAt
        - updatedAt
      type: object
  securitySchemes:
    cookieAuth:
      in: cookie
      name: better-auth.session_token
      type: apiKey
    bearerAuth:
      description: Bearer token authentication
      scheme: bearer
      type: http

````