Referencia

Obtener Datos del Usuario

Endpoint para obtener información específica del usuario autenticado mediante scopes personalizados y tokens de autorización válidos.

Descripción

Este endpoint permite obtener datos específicos del usuario autenticado mediante el uso de scopes. Es útil para aplicaciones que necesitan acceder a información personal del usuario de manera selectiva y con su consentimiento previo. Los datos se obtienen en tiempo real desde LinttedAccounts.

Solicitud para obtener datos del usuario

Para obtener datos de la cuenta del usuario, debes realizar una solicitud POST al endpoint de LinttedAccounts. Este servicio se encarga de devolver los datos actuales del usuario según los scopes solicitados en los headers.

https://accounts.lintted.com/docs/api/oauth/get/scopes/user-data

Headers Requeridos

La solicitud debe incluir los siguientes headers para la autenticación y especificación de datos:

  • Authorization » Token de autorización en formato Bearer.
    Formato: Bearer tu_authToken
  • uniqueID » Identificador único del dispositivo (uniqueDevice).
    Se obtiene durante el proceso de autenticación inicial.
  • scopes » Campos de datos que deseas obtener del usuario.
    Múltiples scopes se separan con +

    Scopes disponibles: id username email gender profile_picture_url date_of_birth country phone_number
Ejemplos de uso de scopes:
Un solo campo: id
Múltiples campos: id+username+email
Información completa: id+username+email+profile_picture_url

Una vez realizada la solicitud correctamente, LinttedAccounts devolverá un objeto userData con los datos solicitados según los scopes especificados en los headers.

El authToken debe mantenerse seguro y nunca exponerse en el frontend. Implementa un sistema de renovación automática para mantener la sesión activa.

Ejemplo de implementación

Solicitud usando JavaScript Fetch API:
const response = await fetch('https://accounts.lintted.com/docs/api/oauth/get/scopes/user-data', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer your_auth_token_here',
    'uniqueID': 'unique_device_id_here',
    'scopes': 'id+username+email+profile_picture_url'
  }
});

const userData = await response.json();
console.log(userData);

El endpoint devolverá los datos del usuario en formato JSON. Asegúrate de manejar correctamente los errores de autenticación y la expiración de tokens.

Respuesta Exitosa

LinttedAccounts devolverá un objeto con la siguiente estructura:

{
  "userData": {
    "id": "12345",
    "username": "john_doe",
    "email": "john@example.com",
    "profile_picture_url": "https://cdn.lintted.com/profiles/12345.jpg"
  },
  "success": true,
  "message": "Datos obtenidos correctamente"
}
Los datos devueltos dependerán exactamente de los scopes solicitados. Solo se incluirán los campos especificados en el header 'scopes'.

Nota: El authToken es un token de acceso que se utiliza para autenticar al usuario en tu aplicación. Este token tiene una duración de 1 hora y debe ser enviado en cada solicitud que requiera autenticación.

Nota: El uniqueID (uniqueDevice) es crucial para la seguridad. Este identificador previene el uso no autorizado de tokens desde dispositivos diferentes al original y debe coincidir con el dispositivo de autenticación.

Nota: Solo solicita los scopes que realmente necesites. Esto mejora la experiencia del usuario y cumple con las mejores prácticas de privacidad. Los usuarios pueden ver exactamente qué información está solicitando tu aplicación.

← Atrás Validar sesión Uso de la API Siguiente → Cerrar sesión Uso de la API