Documentation Index
Fetch the complete documentation index at: https://generaltranslation.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
| |
|---|
| Propósito | Método |
Paso 1 del flujo OAuth de 3 fases y de Iniciar sesión con X Permite a una aplicación cliente obtener un OAuth Request Token para solicitar la autorización del usuario. | POST oauth/request_token |
Paso 2 del flujo OAuth de 3 fases y de Iniciar sesión con X Permite a una aplicación cliente usar un OAuth Request Token para solicitar la autorización del usuario. | GET oauth/authenticate |
Paso 2 del flujo OAuth de 3 fases y de Iniciar sesión con X Permite a una aplicación cliente usar un OAuth Request Token para solicitar la autorización del usuario. | GET oauth/authorize |
Paso 3 del flujo OAuth de 3 fases y de Iniciar sesión con X Permite a una aplicación cliente intercambiar 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 |
Bearer Token de OAuth 2.0
| |
|---|
| Propósito | Método |
| Permite que una App registrada genere un Bearer Token de OAuth 2 de solo aplicación (app-only), que puede utilizarse para realizar solicitudes a la API en nombre de la App, sin contexto de usuario. | POST oauth2/token |
| Permite que una App registrada revoque un Bearer Token de OAuth 2 de solo aplicación (app-only) previamente emitido. | POST oauth2/invalidate_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 utilices HTTPS para todos los pasos de autorización OAuth.
Nota de uso: Solo se aceptan caracteres ASCII para oauth_nonce
Resource URL
https://api.x.com/oauth/request_token
Resource Information
| |
|---|
| Response formats | JSON |
| Requires authentication? | No |
| Rate limited? | Sí |
Parameters
| Name | Required | Description | Example |
|---|
| oauth_callback | required | Para cumplir con OAuth 1.0a este parámetro es obligatorio. El valor que especifiques aquí se utilizará como la URL a la que se redirige a un usuario si aprueba el acceso de tu aplicación a su cuenta. Establécelo en oob para el modo PIN fuera de banda. Esta también es la forma en que especificas URLs de callback personalizadas para usar en aplicaciones de escritorio o móviles. Envía siempre un oauth_callback en este paso, independientemente de que exista un callback preregistrado.
Requerimos que cualquier URL de callback utilizada con este endpoint esté configurada en la configuración de la App en developer.x.com* | http://themattharris.local/auth.php twitterclient://callback |
| x_auth_access_type | optional | 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 que un desarrollador registre una aplicación de lectura/escritura pero también solicite acceso de solo lectura cuando sea apropiado. | |
Obtén más información sobre cómo aprobar tus URLs de callback en esta página.
Ten en cuenta - Puedes ver y editar tus X apps existentes a través del X app dashboard si has iniciado sesión en tu cuenta de X en developer.x.com.
Example request
Request URL: POST https://api.x.com/oauth/request_token
Request POST Body: N/A
Authorization Header: 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"
Response: oauth_token=Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik&oauth_token_secret=Kd75W4OQfb2oJTV0vzGzeXftVAwgMnEK9MumzYcM&oauth_callback_confirmed=true
Permite que una aplicación cliente 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: Un oauth_callback nunca se envía a este método; en su lugar, proporciónalo a POST oauth / request_token.
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 frecuencia? | Sí |
Parámetros
| | | | |
|---|
| Nombre | Obligatorio | Descripción | Valor predeterminado | Ejemplo |
| force_login | opcional | Obliga al usuario a introducir sus credenciales para garantizar que se autoriza la cuenta de usuario correcta. | | |
| screen_name | opcional | Rellena previamente el campo de nombre de usuario en la pantalla de inicio de sesión de OAuth con el valor proporcionado. | | |
Ejemplo de solicitud
Envía al usuario al paso oauth/authorize en un navegador web, incluyendo el parámetro oauth_token:
https://api.x.com/oauth/authorize?oauth_token=Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik
Permite que una aplicación Consumer use un request_token de 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 con callback. El método usará al usuario que haya iniciado sesión actualmente como la cuenta para la autorización de acceso, a menos que el parámetro force_login se establezca en true.
Este método difiere de GET oauth / authorize en que, si el usuario ya ha concedido permisos 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.
Resource URL
https://api.x.com/oauth/authenticate
Resource Information
| |
|---|
| Response formats | JSON |
| Requires authentication? | Yes |
| Rate limited? | Yes |
Parameters
| | | | |
|---|
| Name | Required | Description | Default Value | Example |
| force_login | optional | Obliga al usuario a introducir sus credenciales para garantizar que se autoriza la cuenta de usuario correcta. | | true |
| screen_name | optional | Rellena previamente el campo de nombre de usuario de la pantalla de inicio de sesión de OAuth con el valor proporcionado. | | |
Example request
Envía al usuario al paso oauth/authenticate en un navegador web, incluyendo un parámetro oauth_token:
https://api.x.com/oauth/authenticate?oauth_token=Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik
Permite que una aplicación cliente 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.
Resource URL
https://api.x.com/oauth/access_token
Resource Information
| |
|---|
| Formatos de respuesta | JSON |
| ¿Requiere autenticación? | Sí |
| ¿Tiene limitación de frecuencia? | Sí |
Parameters
| | | | |
|---|
| Nombre | Obligatorio | Descripción | Valor predeterminado | Ejemplo |
| oauth_token | obligatorio | El oauth_token aquí debe ser el mismo oauth_token devuelto en el paso de request_token. | | |
| oauth_verifier | obligatorio | Si se usa el flujo web de OAuth, establezca este parámetro con el valor de oauth_verifier devuelto en la URL de callback. Si está usando OAuth fuera de banda, establezca este valor con el código PIN. Para cumplir con OAuth 1.0a este parámetro es obligatorio. OAuth 1.0a se aplica de forma estricta y las aplicaciones que no usen oauth_verifier no podrán completar el flujo de OAuth. | | |
Example request
POST https://api.x.com/oauth/access_token?oauth_token=qLBVyoAAAAAAx72QAAATZxQWU6P&oauth_verifier=ghLM8lYmAxDbaqL912RZSRjCCEXKDIzx
Para flujo basado en PIN: POST https://api.x.com/oauth/access_token?oauth_token=9Npq8AAAAAAAx72QBRABZ4DAfY9&oauth_verifier=4868795
Example response
oauth_token=6253282-eWudHldSbIaelX7swmsiHImEL4KinwaGloHANdrY&oauth_token_secret=2EEfA6BG5ly3sR3XjE0IBSnlQu4ZrUzPiYTmrkVU&user_id=6253282&screen_name=xapi
POST oauth/invalidate_token
Permite a una aplicación registrada revocar un access_token OAuth emitido presentando sus credenciales de cliente. Una vez que un access_token se ha invalidado, los nuevos intentos de creación generarán un Access Token diferente y el uso del token invalidado ya no estará permitido.
Resource URL
https://api.x.com/1.1/oauth/invalidate_token
Resource Information
| |
|---|
| Response formats | JSON |
| Requires authentication? | Sí: contexto de usuario con los access tokens que quieras invalidar |
| Rate limited? | Sí |
Example request
curl --request POST
--url 'https://api.x.com/1.1/oauth/invalidate_token.json'
--header 'authorization: OAuth oauth_consumer_key="CLIENT_KEY",
oauth_nonce="AUTO_GENERATED_NONCE", oauth_signature="AUTO_GENERATED_SIGNATURE",
oauth_signature_method="HMAC-SHA1", oauth_timestamp="AUTO_GENERATED_TIMESTAMP",
oauth_token="ACCESS_TOKEN", oauth_version="1.0"'
Respuesta de ejemplo
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 127
...
{"access_token":"ACCESS_TOKEN"}
Ejemplo de respuesta de error después de invalidar el token
HTTP/1.1 401 Authorization Required
...
{"errors": [{
"code": 89,
"message": "Invalid or expired token."}
]}
Permite que una aplicación registrada obtenga un Bearer Token de OAuth 2, que se puede usar para realizar solicitudes a la API en nombre de la propia aplicación, sin un contexto de usuario. Esto se denomina autenticación solo de la aplicación.
Un Bearer Token se puede invalidar usando oauth2/invalidate_token. Una vez que se haya invalidado un Bearer Token, los nuevos intentos de creación generarán un Bearer Token diferente y el uso del token anterior ya no estará permitido.
Solo puede existir un Bearer Token activo para una aplicación, y las solicitudes repetidas a este método devolverán el mismo token ya existente hasta que se haya invalidado.
Las respuestas satisfactorias incluyen una estructura JSON que describe el Bearer Token otorgado.
Los tokens recibidos mediante este método deben almacenarse en caché. Si se intenta con demasiada frecuencia, las solicitudes se rechazarán con un HTTP 403 con el código de error 99.
URL del recurso
https://api.x.com/oauth2/token
Información del recurso
| |
|---|
| Formatos de respuesta | JSON |
| ¿Requiere autenticación? | Sí: autenticación básica con tu API key como nombre de usuario y el secreto de tu API key como contraseña |
| ¿Tiene límite de frecuencia? | Sí |
Parámetros
| | | | |
|---|
| Name | Required | Description | Default Value | Example |
| grant_type | required | Especifica el tipo de grant que solicita la aplicación. En este momento, solo se permite client_credentials. Consulta autenticación solo de la aplicación para obtener más información. | | client_credentials |
Ejemplo de solicitud
POST /oauth2/token HTTP/1.1
Host: api.x.com
User-Agent: My X App v1.0.23
Authorization: Basic eHZ6MWV2R ... o4OERSZHlPZw==
Content-Type: application/x-www-form-urlencoded;charset=UTF-8
Content-Length: 29
Accept-Encoding: gzip
grant_type=client_credentials
Ejemplo de respuesta:
HTTP/1.1 200 OK
Status: 200 OK
Content-Type: application/json; charset=utf-8
...
Content-Encoding: gzip
Content-Length: 140
{"token_type":"bearer","access_token":"AAAA%2FAAA%3DAAAAAAAA"}
POST oauth2/invalidate_token
Permite que una aplicación registrada revoque un Bearer Token de OAuth 2.0 emitido al presentar sus credenciales de cliente. Una vez que se haya invalidado un Bearer Token, los nuevos intentos de creación generarán un Bearer Token diferente y el uso del token invalidado ya no estará permitido.
Las respuestas satisfactorias incluyen una estructura JSON que describe el Bearer Token revocado.
Resource URL
https://api.x.com/oauth2/invalidate_token
Resource Information
| |
|---|
| Response formats | JSON |
| Requires authentication? | Yes - OAuth 1.0a con las consumer API keys de la aplicación y el access token y access token secret del propietario de la aplicación |
| Rate limited? | Yes |
Parameters
| Name | Required | Description |
|---|
| access_token | required | El valor del Bearer Token que quieres invalidar |
Example request
curl --request POST
--url 'https://api.x.com/oauth2/invalidate_token?access_token=AAAA%2FAAA%3DAAAAAAAA'
--header 'authorization: OAuth oauth_consumer_key="CLIENT_KEY",
oauth_nonce="AUTO_GENERATED_NONCE", oauth_signature="AUTO_GENERATED_SIGNATURE",
oauth_signature_method="HMAC-SHA1", oauth_timestamp="AUTO_GENERATED_TIMESTAMP",
oauth_token="ACCESS_TOKEN", oauth_version="1.0"'
Respuesta de ejemplo
Status: 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 135
...
{
"access_token": "AAAA%2FAAA%3DAAAAAAAA"
}