Ir para o conteúdo

Autenticação

Todos os endpoints da API requerem autenticação via Bearer Token (JWT).


Mecanismo

A API usa o esquema HTTP Bearer (Authorization: Bearer <token>). Em cada requisição, valida-se que o token é válido e que a sessão está ativa. O token contém informações do usuário que a API utiliza para determinar o escopo dos dados retornados.


Header necessário

Authorization: Bearer <seu_token>

Exemplos de requisição autenticada

curl -X GET "http://localhost:8000/api/v1/logs/query?level=ERROR" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
import requests

headers = {"Authorization": f"Bearer {token}"}
response = requests.get(
    "http://localhost:8000/api/v1/logs/query",
    params={"level": "ERROR"},
    headers=headers,
)
data = response.json()
const response = await fetch('/api/v1/logs/query?level=ERROR', {
  headers: {
    'Authorization': `Bearer ${token}`
  }
});
const data = await response.json();

Escopo automático por empresa

Não é necessário enviar nenhum identificador de empresa como parâmetro. A API o determina a partir do token e o aplica em todas as consultas automaticamente.


Erros de autenticação

Código Descrição
401 Unauthorized Token inválido, expirado ou sessão inativa. Header: WWW-Authenticate: Bearer
403 Forbidden Token válido, mas sem id_company
500 Internal Server Error Erro inesperado ao validar o token

Swagger UI

Para testar a API pelo Swagger UI (/docs):

  1. Clique no botão Authorize (ícone de cadeado).
  2. No campo HTTPBearer, cole seu token (sem o prefixo Bearer).
  3. Clique em Authorize e depois em Close.

Todas as requisições feitas pelo Swagger incluirão o token automaticamente.