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

# Referência

> Gere o token de acesso usado em todas as demais requisições

Toda integração começa por aqui. Envie as credenciais do usuário de integração cadastrado no Gestio e receba o `accessToken` a ser usado no header `Authorization` das demais chamadas.

## Autenticar

Use `POST /v2/autenticar`. Não requer autenticação prévia — esta é a rota que **gera** o token.

<Card title="Campos obrigatórios" horizontal>
  `email` e `password` do usuário de integração cadastrado no Gestio.
</Card>

**Exemplo:**

```json theme={null}
POST /v2/autenticar
{
  "email": "integracao@suaempresa.com.br",
  "password": "sua-senha"
}
```

**Resposta (sucesso):**

```json theme={null}
{
  "authenticated": true,
  "created": "2026-07-29 14:32:10",
  "expiration": "2026-07-29 15:32:10",
  "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
```

<Note>
  Esta rota sempre responde com HTTP `200`, mesmo quando `email`/`password` estão incorretos. Verifique o campo `authenticated` no corpo da resposta para saber se a autenticação foi bem-sucedida.
</Note>

**Resposta (falha):**

```json theme={null}
{
  "authenticated": false,
  "message": "Falha na autenticação."
}
```

## Usando o token

O token retornado deve ser enviado no header `Authorization` de todas as demais requisições, no formato `Bearer {token}`:

```bash theme={null}
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
```

<Tip>
  Tokens expiram após um período determinado. Se receber `401` em outra rota, gere um novo token por aqui antes de repetir a chamada.
</Tip>

<Warning>
  Nunca exponha `email`/`password` de integração em código client-side (frontend, apps mobile). Essa chamada deve ser feita apenas pelo seu backend.
</Warning>
