Endpoint UserInfo
El SSO proporciona un endpoint para recuperar, de forma simplificada, alguna información del usuario. Son el email, el nombre completo y su ID.
URLs
| Método | URL | Acción | Descripción |
|---|---|---|---|
| GET | /api/userinfo | Visualizar | Recupera información básica del usuario (email, nombre completo e ID) |
Producción:
{security-producao}/api/userinfoHomologación:
{security-homologacao}/api/userinfoAutenticación
En el header de la llamada deberá ser informado en formato Bearer el access token del usuario, obtenido en el proceso del capítulo 6.
Authorization: Bearer <access_token>Ejemplo de Solicitud
javascript
const response = await fetch('{security-producao}/api/userinfo', {
method: 'GET',
headers: {
'Authorization': `Bearer ${accessToken}`
}
});
const userInfo = await response.json();Respuesta
La respuesta obtenida será en el formato siguiente:
json
{
"user_email": "string",
"user_id": "string",
"user_name": "string"
}Campos de la Respuesta
| Campo | Tipo | Descripción |
|---|---|---|
user_email | string | Email del usuario |
user_id | string | ID único del usuario en el sistema |
user_name | string | Nombre completo del usuario |
Tratamiento de Errores
En caso de error, la API retornará un código de estado HTTP apropiado (401, 403, etc.) y un mensaje de error en el cuerpo de la respuesta.
Ejemplo Completo
javascript
async function obtenerUserInfo(accessToken) {
try {
const response = await fetch('{security-producao}/api/userinfo', {
method: 'GET',
headers: {
'Authorization': `Bearer ${accessToken}`
}
});
if (!response.ok) {
throw new Error(`Error ${response.status}: ${response.statusText}`);
}
const userInfo = await response.json();
return userInfo;
} catch (error) {
console.error('Error al obtener información del usuario:', error);
throw error;
}
}