Autenticação JWT
A API utiliza JWT (JSON Web Tokens) via passport-jwt para autenticar todas as requisições protegidas.
Login
http
POST /api/user/login
Content-Type: application/json
{
"email": "usuario@empresa.com",
"password": "sua_senha"
}Resposta:
json
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"user": {
"_id": "...",
"name": "Nome do Usuário",
"email": "usuario@empresa.com"
}
}Usando o Token
Inclua o token em todas as requisições protegidas no header Authorization:
http
GET /api/colaborador
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...No Frontend (axios)
O boot axios.js do Portal Administrativo e do App de Rota já injeta o token automaticamente:
javascript
// boot/axios.js
api.interceptors.request.use(config => {
const token = store.getters['auth/token']
if (token) {
config.headers.Authorization = `Bearer ${token}`
}
return config
})Erros de Autenticação
| Status | Descrição |
|---|---|
| 401 | Token ausente ou inválido |
| 403 | Token válido, sem permissão |
| 422 | Credenciais inválidas no login |