OAuth 1.0a
| Propósito | Método |
| Paso 1 del flujo OAuth de 3 patas e Iniciar sesión con X Permite que una aplicación Consumer obtenga un OAuth Request Token para solicitar la autorización del usuario. | POST oauth/request_token |
| Paso 2 del flujo OAuth de 3 patas e Iniciar sesión con X Permite que una aplicación Consumer use un OAuth Request Token para solicitar la autorización del usuario. | GET oauth/authenticate |
| Paso 2 del flujo OAuth de 3 patas e Iniciar sesión con X Permite que una aplicación Consumer use un OAuth Request Token para solicitar la autorización del usuario. | GET oauth/authorize |
| Paso 3 del flujo OAuth de 3 patas e Iniciar sesión con X Permite que una aplicación Consumer intercambie el OAuth Request Token por un OAuth Access Token. | POST oauth/access_token |
| Permite que una aplicación registrada revoque un OAuth Access Token emitido. | POST oauth/invalidate_token |
OAuth 2.0 Bearer Token
| Propósito | Método |
| Permite que una App registrada genere un OAuth 2 app-only Bearer Token, que se puede usar para realizar solicitudes a la API en nombre de una App, sin contexto de usuario. | POST oauth2/token |
| Permite que una App registrada revoque un OAuth 2 app-only Bearer Token emitido. | POST oauth2/invalidate_token |
POST oauth/request_token
Permite que una aplicación Consumer obtenga un OAuth Request Token para solicitar la autorización del usuario. Este método cumple con la Sección 6.1 del flujo de autenticación OAuth 1.0. Requerimos que uses HTTPS en todos los pasos de autorización de OAuth. Nota de uso: Solo se aceptan valores ASCII para eloauth_nonce
URL del recurso
https://api.x.com/oauth/request_token
Información del recurso
| Formatos de respuesta | JSON |
| ¿Requiere autenticación? | No |
| ¿Tiene límite de tasa? | Sí |
| Nombre | Requerido | Descripción | Ejemplo |
|---|---|---|---|
| oauth_callback | requerido | Para el cumplimiento de OAuth 1.0a, este parámetro es requerido. El valor que especifiques aquí se usará como la URL a la que se redirigirá al usuario si aprueba el acceso de tu aplicación a su cuenta. Establécelo en oob para el modo pin fuera de banda. Así también se especifican callbacks personalizados para usar en aplicaciones de escritorio/móviles. Envía siempre un oauth_callback en este paso, independientemente de un callback preregistrado.Requerimos que cualquier URL de callback usada con este endpoint deba estar configurada dentro de la configuración de la App en developer.x.com* | http://themattharris.local/auth.php twitterclient://callback |
| x_auth_access_type | opcional | Sobrescribe el nivel de acceso que una aplicación solicita a la cuenta de un usuario. Los valores admitidos son read o write. Este parámetro está pensado para permitir a un desarrollador registrar una aplicación de lectura/escritura pero también solicitar acceso de solo lectura cuando sea apropiado. |
POST https://api.x.com/oauth/request_token
Cuerpo POST de la solicitud: N/A
Encabezado de autorización: OAuth oauth_nonce="K7ny27JTpKVsTgdyLdDfmQQWVLERj2zAK5BslRsqyw", oauth_callback="http%3A%2F%2Fmyapp.com%3A3005%2Ftwitter%2Fprocess_callback", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1300228849", oauth_consumer_key="OqEqJeafRSF11jBMStrZz", oauth_signature="Pc%2BMLdv028fxCErFyi8KXFM%2BddU%3D", oauth_version="1.0"
Respuesta: oauth_token=Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik&oauth_token_secret=Kd75W4OQfb2oJTV0vzGzeXftVAwgMnEK9MumzYcM&oauth_callback_confirmed=true
GET oauth/authorize
Permite que una aplicación Consumer use un OAuth Request Token para solicitar la autorización del usuario. Este método cumple con la Sección 6.2 del flujo de autenticación OAuth 1.0. Las aplicaciones de escritorio deben usar este método (y no pueden usar GET oauth / authenticate). Nota de uso: Nunca se envía unoauth_callback a este método; proporciónalo a POST oauth / request_token en su lugar.
URL del recurso
https://api.x.com/oauth/authorize
Información del recurso
| Formatos de respuesta | JSON |
| ¿Requiere autenticación? | Sí |
| ¿Tiene límite de tasa? | Sí |
| Nombre | Requerido | Descripción | Valor predeterminado | Ejemplo |
| force_login | opcional | Obliga al usuario a ingresar sus credenciales para asegurar que se autorice la cuenta correcta. | ||
| screen_name | opcional | Rellena previamente el campo de nombre de usuario de la pantalla de inicio de sesión OAuth con el valor indicado. |
oauth/authorize en un navegador web, incluyendo un parámetro oauth_token:
https://api.x.com/oauth/authorize?oauth_token=Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik
GET oauth/authenticate
Permite que una aplicación Consumer use unrequest_token OAuth para solicitar la autorización del usuario.
Este método reemplaza la Sección 6.2 del flujo de autenticación OAuth 1.0 para aplicaciones que utilizan el flujo de autenticación por callback. El método usará al usuario que actualmente ha iniciado sesión como la cuenta para la autorización de acceso, a menos que el parámetro force_login esté establecido en true.
Este método se diferencia de GET oauth / authorize en que, si el usuario ya ha otorgado permiso a la aplicación, la redirección se producirá sin que el usuario tenga que volver a aprobar la aplicación. Para lograr este comportamiento, debes habilitar la opción Use Sign in with X en el registro de tu aplicación.
URL del recurso
https://api.x.com/oauth/authenticate
Información del recurso
| Formatos de respuesta | JSON |
| ¿Requiere autenticación? | Sí |
| ¿Tiene límite de tasa? | Sí |
| Nombre | Requerido | Descripción | Valor predeterminado | Ejemplo |
| force_login | opcional | Obliga al usuario a ingresar sus credenciales para asegurar que se autorice la cuenta correcta. | true | |
| screen_name | opcional | Rellena previamente el campo de nombre de usuario de la pantalla de inicio de sesión OAuth con el valor indicado. |
oauth/authenticate en un navegador web, incluyendo un parámetro oauth_token:
https://api.x.com/oauth/authenticate?oauth_token=Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik
POST oauth/access_token
Permite que una aplicación Consumer intercambie el OAuth Request Token por un OAuth Access Token. Este método cumple con la Sección 6.3 del flujo de autenticación OAuth 1.0. URL del recursohttps://api.x.com/oauth/access_token
Información del recurso
| Formatos de respuesta | JSON |
| ¿Requiere autenticación? | Sí |
| ¿Tiene límite de tasa? | Sí |
| Nombre | Requerido | Descripción | Valor predeterminado | Ejemplo |
| oauth_token | requerido | El oauth_token aquí debe ser el mismo que el oauth_token devuelto en el paso request_token. | ||
| oauth_verifier | requerido | Si utilizas el flujo OAuth web, establece este parámetro con el valor del oauth_verifier devuelto en la URL de callback. Si estás utilizando OAuth fuera de banda, establece este valor en el pin-code. Para el cumplimiento de OAuth 1.0a, este parámetro es requerido. OAuth 1.0a se aplica estrictamente y las aplicaciones que no usen el oauth_verifier no podrán completar el flujo OAuth. |
POST https://api.x.com/oauth/access_token?oauth_token=qLBVyoAAAAAAx72QAAATZxQWU6P&oauth_verifier=ghLM8lYmAxDbaqL912RZSRjCCEXKDIzx
Desde PIN-based POST https://api.x.com/oauth/access_token?oauth_token=9Npq8AAAAAAAx72QBRABZ4DAfY9&oauth_verifier=4868795
Respuesta de ejemplo
oauth_token=6253282-eWudHldSbIaelX7swmsiHImEL4KinwaGloHANdrY&oauth_token_secret=2EEfA6BG5ly3sR3XjE0IBSnlQu4ZrUzPiYTmrkVU&user_id=6253282&screen_name=xapi
POST oauth/invalidate_token
Permite que una aplicación registrada revoque un access_token OAuth emitido presentando sus credenciales de cliente. Una vez que se haya invalidado un access_token, los nuevos intentos de creación producirán un Access Token diferente y ya no se permitirá el uso del token invalidado. URL del recursohttps://api.x.com/1.1/oauth/invalidate_token
Información del recurso
| Formatos de respuesta | JSON |
| ¿Requiere autenticación? | Sí — Contexto de usuario con los access tokens que deseas invalidar |
| ¿Tiene límite de tasa? | Sí |
POST oauth2/token
Permite que una aplicación registrada obtenga un OAuth 2 Bearer Token, que se puede usar para realizar solicitudes a la API en nombre de la propia aplicación, sin contexto de usuario. Esto se llama Autenticación Application-only. Un Bearer Token puede invalidarse usando oauth2/invalidate_token. Una vez que se haya invalidado un Bearer Token, los nuevos intentos de creación producirán un Bearer Token diferente y ya no se permitirá el uso del token anterior. Solo puede existir un bearer token pendiente para una aplicación, y las solicitudes repetidas a este método producirán el mismo token ya existente hasta que se invalide. Las respuestas exitosas incluyen una estructura JSON que describe el Bearer Token concedido. Los tokens recibidos por este método deben almacenarse en caché. Si se intenta con demasiada frecuencia, las solicitudes serán rechazadas con un HTTP 403 con código 99. URL del recursohttps://api.x.com/oauth2/token
Información del recurso
| Formatos de respuesta | JSON |
| ¿Requiere autenticación? | Sí — Basic auth con tu API key como nombre de usuario y tu API key secret como contraseña |
| ¿Tiene límite de tasa? | Sí |
| Nombre | Requerido | Descripción | Valor predeterminado | Ejemplo |
| grant_type | requerido | Especifica el tipo de concesión solicitada por la aplicación. En este momento, solo se permite client_credentials. Consulta Autenticación Application-Only para más información. | client_credentials |
POST oauth2/invalidate_token
Permite que una aplicación registrada revoque un oAuth 2.0 Bearer Token emitido presentando sus credenciales de cliente. Una vez que se haya invalidado un Bearer Token, los nuevos intentos de creación producirán un Bearer Token diferente y ya no se permitirá el uso del token invalidado. Las respuestas exitosas incluyen una estructura JSON que describe el Bearer Token revocado. URL del recursohttps://api.x.com/oauth2/invalidate_token
Información del recurso
| Formatos de respuesta | JSON |
| ¿Requiere autenticación? | Sí — oAuth 1.0a con las API keys de consumer de la aplicación y el access token & access token secret del propietario de la aplicación |
| ¿Tiene límite de tasa? | Sí |
| Nombre | Requerido | Descripción |
|---|---|---|
| access_token | requerido | El valor del bearer token que deseas invalidar |