API - Autenticação
Documentação da API de autenticação do sistema PAC.
Base URL
https://api.pac.com.br
ou
http://localhost:3000 (desenvolvimento)
Autenticação
A API utiliza JWT (JSON Web Tokens) para autenticação. Após fazer login, você receberá um token que deve ser enviado no header de todas as requisições autenticadas.
Header de Autenticação
Authorization: Bearer {token}
Endpoints
POST /auth/login
Faz login no sistema e retorna o token JWT.
Request:
{
"email": "usuario@exemplo.com",
"password": "senha123"
}
Response (200 OK):
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"user": {
"id": "uuid",
"email": "usuario@exemplo.com",
"name": "Nome do Usuário",
"role": "client",
"entityId": "uuid-do-cliente",
"isActive": true
}
}
Erros:
401 Unauthorized: Email ou senha inválidos400 Bad Request: Dados inválidos
POST /auth/logout
Faz logout do sistema (invalida o token).
Headers:
Authorization: Bearer {token}
Response (200 OK):
{
"message": "Logout realizado com sucesso"
}
Exemplo de Uso
JavaScript/TypeScript
// Login
const response = await fetch('https://api.pac.com.br/auth/login', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
email: 'usuario@exemplo.com',
password: 'senha123'
})
});
const data = await response.json();
const token = data.access_token;
// Usar token em requisições subsequentes
const apiResponse = await fetch('https://api.pac.com.br/clients', {
headers: {
'Authorization': `Bearer ${token}`,
'Content-Type': 'application/json'
}
});
cURL
# Login
curl -X POST https://api.pac.com.br/auth/login \
-H "Content-Type: application/json" \
-d '{
"email": "usuario@exemplo.com",
"password": "senha123"
}'
# Usar token
curl -X GET https://api.pac.com.br/clients \
-H "Authorization: Bearer {token}"