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

# Login

> Autentica um usuário com email e senha, retornando um token JWT para uso na API.




## OpenAPI

````yaml api-reference/openapi.yaml post /auth/login
openapi: 3.1.0
info:
  title: Verifica AI API
  description: >
    API para análise de contratos com inteligência artificial.


    ## Autenticação


    A API Verifica AI oferece autenticação via JWT (JSON Web Token) para acesso
    programático aos endpoints da API.


    ### Como obter o token:


    Faça login através do endpoint `/auth/login` com suas credenciais:


    ```bash

    curl -X POST https://api.verifica.ia.br/auth/login \
      -H "Content-Type: application/json" \
      -d '{
        "email": "usuario@example.com",
        "password": "senha123456"
      }'
    ```


    ### Header de autenticação:


    ```

    Authorization: Bearer SEU_TOKEN_JWT

    ```


    Para mais informações, consulte a [documentação completa de
    autenticação](/essentials/authentication).
  version: 1.0.0
  contact:
    name: Verifica AI Support
    email: support@verifica.ia.br
  license:
    name: Proprietary
servers:
  - url: https://api.verifica.ia.br
    description: Produção
  - url: http://localhost:3333
    description: Desenvolvimento
security: []
tags:
  - name: Health
    description: Endpoints de verificação de saúde da API
  - name: Authentication
    description: Autenticação JWT para acesso programático à API
  - name: Contracts
    description: Gestão de contratos
  - name: Risk Analysis
    description: Análise de risco de contratos
  - name: API Keys
    description: Gestão de API Keys
paths:
  /auth/login:
    post:
      tags:
        - Authentication
      summary: Login
      description: >
        Autentica um usuário com email e senha, retornando um token JWT para uso
        na API.
      operationId: login
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - email
                - password
              properties:
                email:
                  type: string
                  format: email
                  description: Email do usuário
                  example: usuario@example.com
                password:
                  type: string
                  description: Senha do usuário
                  example: senha123456
      responses:
        '200':
          description: Login realizado com sucesso
          content:
            application/json:
              schema:
                type: object
                properties:
                  token:
                    type: string
                    description: Token JWT para autenticação
                    example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
                  user:
                    type: object
                    properties:
                      id:
                        type: string
                        format: uuid
                        example: uuid-do-usuario
                      email:
                        type: string
                        format: email
                        example: usuario@example.com
                      name:
                        type: string
                        example: Nome do Usuário
                      plan:
                        type: string
                        example: PRO
        '401':
          description: Credenciais inválidas
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                message: Invalid email or password
                error: INVALID_CREDENTIALS
        '403':
          description: Acesso negado
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                message: Access denied
                error: ACCESS_DENIED
components:
  schemas:
    Error:
      type: object
      properties:
        message:
          type: string
          description: Mensagem de erro
        errors:
          type: array
          items:
            type: object
          description: Lista de erros de validação (opcional)

````