Autenticação
Renovar Token
Renovar o token de acesso usando o cookie do token de renovação.
POST /api/auth/refresh
Renova o token de acesso usando o token de renovação armazenado em um cookie HTTP-only. O cliente não precisa enviar nenhum corpo — o token de renovação é lido a partir do cookie.
Auth: Pública — o cookie refreshToken autentica a requisição
Exemplo
curl -X POST https://api.reten.ai/api/auth/refresh \
-b "refreshToken=eyJhbGciOiJIUzI1NiIs..."// Os cookies são enviados automaticamente pelo navegador
const response = await fetch("https://api.reten.ai/api/auth/refresh", {
method: "POST",
credentials: "include",
});
const data = await response.json();
const accessToken = data.accessToken;import requests
response = requests.post(
"https://api.reten.ai/api/auth/refresh",
cookies={"refreshToken": "eyJhbGciOiJIUzI1NiIs..."},
)
data = response.json()
access_token = data["accessToken"]Resposta 201 Created
Mesmo corpo do login, com roles, permissions e tenantIds lidos novamente das funções atuais do usuário:
{
"accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"user": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"username": "jdoe",
"email": "jdoe@example.com",
"firstName": "Jane",
"lastName": "Doe",
"roles": ["viewer"],
"permissions": [
"project:view",
"user:view",
"activity:view",
"commerce-lifecycle-snapshot:view"
],
"tenantIds": ["660e8400-e29b-41d4-a716-446655440000"]
}
}Um novo cookie de token de renovação também é definido.
Respostas de Erro
| Status | Descrição |
|---|---|
401 | Token de renovação inválido ou expirado |
401 | O usuário está desativado — User account is deactivated |