Autenticação

Autenticação

A API utiliza JWT (JSON Web Token) para autenticação. O fluxo é:

  1. Receba suas credenciais (o cadastro é feito internamente pela equipe Spirit)
  2. Faça login para obter o token
  3. Envie o token em todas as requisições

Nota: Não existe rota pública de cadastro. A criação de contas é feita por um administrador interno. Entre em contato com [email protected] para solicitar suas credenciais.

Login

Obtenha o token JWT enviando email e senha.

curl -X POST https://api.spiritotc.com.br/auth/login \
  -H "Content-Type: application/json" \
  -d '{
    "email": "[email protected]",
    "password": "senhaSegura123"
  }'

Resposta (200):

{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "user": {
    "id": "uuid-do-usuario",
    "name": "Minha Empresa LTDA",
    "email": "[email protected]",
    "document": "12345678000199",
    "role": "client"
  }
}

Usando o Token

Inclua o token no header Authorization de todas as requisições:

curl -X GET https://api.spiritotc.com.br/account/me \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."

Validade do Token

O token JWT expira em 24 horas. Após expirar, faça login novamente para obter um novo token.

Respostas de Erro

StatusDescrição
401 UnauthorizedToken ausente, inválido ou expirado
403 ForbiddenAcesso negado (role insuficiente)

Exemplo de erro:

{
  "statusCode": 401,
  "message": "Credenciais inválidas",
  "timestamp": "2026-02-20T18:00:00.000Z",
  "path": "/auth/login"
}

Boas Práticas

  • Armazene o token de forma segura (nunca no frontend público)
  • Implemente renovação automática: ao receber 401, faça login e tente novamente
  • Use HTTPS em todas as chamadas
  • Nunca compartilhe seu token