Reten Docs
Autenticação

Usuário Atual

Obter as informações do usuário atualmente autenticado.

GET /api/auth/me

Retorna informações sobre o usuário autenticado atualmente.

Auth: Necessária — qualquer usuário autenticado; não é necessário o header x-tenant-id

Headers

HeaderObrigatórioValor
AuthorizationSimBearer <access_token>

Exemplo

curl https://api.reten.ai/api/auth/me \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..."
const response = await fetch("https://api.reten.ai/api/auth/me", {
  headers: { "Authorization": "Bearer <token>" },
});
const data = await response.json();
import requests

response = requests.get(
    "https://api.reten.ai/api/auth/me",
    headers={"Authorization": "Bearer eyJhbGciOiJIUzI1NiIs..."},
)
data = response.json()

Resposta 200 OK

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "username": "jdoe",
  "roles": ["viewer"],
  "permissions": [
    "project:view",
    "user:view",
    "activity:view",
    "commerce-lifecycle-snapshot:view"
  ],
  "tenantIds": ["660e8400-e29b-41d4-a716-446655440000"],
  "activeTenantId": ""
}
CampoTipoDescrição
idUUIDID do usuário
usernamestringNome de usuário
rolesstring[]Valores das funções do usuário (veja Funções e Permissões)
permissionsstring[]Permissões concedidas por todas as funções do usuário; a ordem não é garantida
tenantIdsstring[]Tenants aos quais o usuário pertence
activeTenantIdstringSempre "" com um token de acesso: este endpoint não lê x-tenant-id

roles, permissions e tenantIds vêm do token de acesso, então refletem o usuário no momento do último login ou da última renovação. A resposta não tem email, firstName nem lastName; esses campos vêm na resposta do login.

Com uma API key, a resposta descreve a key: roles é [], permissions contém as permissões efetivas da key, tenantIds e activeTenantId contêm o tenant da key, e aparecem mais dois campos — isApiKey: true e apiKeyId.

Respostas de Erro

StatusDescrição
401Token de acesso inválido ou expirado