Autenticación
Usuario Actual
Obtener la información del usuario autenticado actual.
GET /api/auth/me
Devuelve información sobre el usuario autenticado actualmente.
Auth: Requerida — cualquier usuario autenticado; no hace falta el header x-tenant-id
Encabezados
| Encabezado | Requerido | Valor |
|---|---|---|
Authorization | Sí | Bearer <access_token> |
Ejemplo
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()Respuesta 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": ""
}| Campo | Tipo | Descripción |
|---|---|---|
id | UUID | ID del usuario |
username | string | Nombre de usuario |
roles | string[] | Valores de rol del usuario (ver Roles y Permisos) |
permissions | string[] | Permisos que otorgan todos los roles del usuario; el orden no está garantizado |
tenantIds | string[] | Tenants a los que pertenece el usuario |
activeTenantId | string | Siempre "" con un token de acceso: este endpoint no lee x-tenant-id |
roles, permissions y tenantIds salen del token de acceso, así que reflejan al usuario tal como estaba en el último inicio de sesión o la última renovación. La respuesta no incluye email, firstName ni lastName; esos datos vienen en la respuesta del inicio de sesión.
Con una clave de API, la respuesta describe la clave: roles es [], permissions contiene los permisos efectivos de la clave, tenantIds y activeTenantId contienen el tenant de la clave, y aparecen dos campos más — isApiKey: true y apiKeyId.
Respuestas de Error
| Estado | Descripción |
|---|---|
401 | Token de acceso inválido o expirado |