OAuth 1.0a
Muchos endpoints de la plataforma para desarrolladores de X usan el método OAuth 1.0a para actuar, o hacer solicitudes a la API, en nombre de una cuenta de X. Por ejemplo, si tienes una app de desarrollador de X, puedes hacer solicitudes a la API en nombre de cualquier cuenta de X siempre que ese usuario autentique tu app. Ten en cuenta: si no estás familiarizado con conceptos como HMAC-SHA1 y percent encoding, te recomendamos que consultes la sección “herramientas útiles” a continuación, que enumera algunos clientes de API que simplifican en gran medida el proceso de autenticación.Conceptos clave
Firmar una solicitud con claves y tokens
Debes firmar cada solicitud a la API pasando varias claves y tokens generados en un authorization header. Para empezar, puedes generar varias claves y tokens en la página de detalles de tu X developer app, incluidos los siguientes:Hacer solicitudes en nombre de los usuarios
Al crear una firma, necesitas un conjunto de access tokens que representen al usuario en cuyo nombre vas a hacer una solicitud. Puedes generar un conjunto de access tokens que represente la cuenta de X propietaria de la X developer app desde la página de detalles de la app, pero si deseas hacer una solicitud en nombre de otra cuenta de X, el propietario de esa cuenta debe otorgarte acceso iniciando sesión en su cuenta como parte del flujo de 3-legged OAuth. El resultado de este proceso es un conjunto de access tokens (oauth_token y oauth_token_secret) que se puede usar para hacer una solicitud OAuth 1.0a. Una vez que tengas estas claves y tokens, puedes crear una firma desde cero. No recomendamos hacerlo a menos que sepas lo que haces, o utilizar una de las herramientas mencionadas a continuación para hacer una solicitud a un endpoint que requiera OAuth 1.0a. Como referencia, aquí tienes un ejemplo de solicitud cURL firmada con todos los tokens generados pasados en un authorization header:Nota: Los access tokens de usuario son sensibles y deben protegerse con mucho cuidado. Cuando se generan access tokens, el usuario que representan confía en que tu aplicación los mantendrá seguros. Si tanto las API keys como los access tokens de usuario se ven comprometidos, tu aplicación podría exponer potencialmente el acceso a información privada y a funciones de la cuenta. Te animamos a que aprendas más sobre proteger claves y access tokens.