Skip to main content
La X API requiere autenticación para todos los endpoints. El XDK admite tres métodos de autenticación:
  1. Bearer Token (solo App)
  2. OAuth 2.0 con PKCE
  3. OAuth 1.0a (Contexto de usuario)
  • Bearer Token: Utiliza este método para acceso de solo lectura a endpoints que admiten autenticación de App (por ejemplo, búsqueda de Publicaciones, endpoints de streaming).
  • OAuth 2.0 PKCE: Autenticación segura para acceso basado en scopes y autorizado por el usuario (por ejemplo, obtener las métricas non_public de las Publicaciones del usuario autenticado).
  • OAuth 1.0a: Autenticación heredada para operaciones específicas de usuario (por ejemplo, publicar en nombre de un usuario, administrar Listas).
Obtén las credenciales en la Consola de desarrollador de X. Necesitarás una cuenta de desarrollador aprobada y una App con los permisos adecuados (por ejemplo, Lectura + Escritura).

Crear un Client

Todos los flujos de autenticación crean una instancia de Client:

1. Bearer Token (solo App)

Para operaciones de solo lectura sin contexto de usuario. Pasos:
  1. En la Consola de desarrollador, genera un Bearer Token para tu App.
  2. Pásalo al Client. Ejemplo:
Uso:

2. OAuth 2.0 con PKCE (contexto de usuario)

Este ejemplo muestra cómo usar OAuth 2.0 con Proof Key for Code Exchange (PKCE). Utiliza este flujo para acceso específico de usuario (por ejemplo, publicar en nombre de un usuario o subir contenido multimedia para un usuario). Pasos:
  1. En la Consola de desarrollador, registra tu App con un URI de redirección (por ejemplo, http://localhost:8080/callback).
  2. Obtén el Client ID (no se necesita secreto para PKCE).
  3. Inicia el flujo, dirige al usuario a la URL de autenticación y gestiona el callback. Ejemplo (usando un servidor web para el callback):
Renovación del token (automática en el SDK para sesiones prolongadas):

3. OAuth 1.0a (Contexto de usuario)

Para aplicaciones heredadas o casos de uso específicos que requieren autenticación con OAuth 1.0a: Pasos:
  1. En la Consola de desarrollador, obtén tu API Key y API Secret.
  2. Si ya tienes tokens de acceso, úsalos directamente. De lo contrario, completa el flujo de OAuth 1.0a para obtenerlos.
  3. Crea una instancia de OAuth1 y pásala al Client. Ejemplo (con tokens de acceso existentes):
Ejemplo (flujo completo de OAuth 1.0a):
Nota:
  • Nunca codifiques secretos directamente en producción; usa variables de entorno o gestores de secretos (por ejemplo, os.getenv("X_BEARER_TOKEN")).
  • Para PKCE, asegúrate de que las URI de redirección usen HTTPS en producción.
  • El SDK valida los tokens y lanza xdk.AuthenticationError en caso de fallos. Para ver ejemplos de código detallados que usan el XDK de Python, consulta nuestro repositorio de ejemplos de código en GitHub.