Descripción general
- API Key and Secret: Esencialmente, el nombre de usuario y la contraseña de tu App. Las usarás para autenticar solicitudes que requieren OAuth 1.0a User Context o para generar otros tokens, como user Access Tokens o App Access Token.
- Access Token and Secret: En general, los Access Tokens representan al usuario en cuyo nombre realizas la solicitud. Los que puedes generar a través del portal de desarrolladores representan al usuario propietario de la App. Los usarás para autenticar solicitudes que requieren OAuth 1.0a User Context. Si deseas realizar solicitudes en nombre de otro usuario, deberás usar el flujo de OAuth de 3 fases para que te autorice.
- Client ID and Client Secret: Estas credenciales se utilizan para obtener un user Access Token con autenticación OAuth 2.0. Al igual que con OAuth 1.0a, los user Access Tokens se utilizan para autenticar solicitudes que proporcionan información privada de la cuenta de usuario o realizan acciones en nombre de otra cuenta, pero con un alcance de permisos detallado para un mayor control sobre el acceso que tiene la aplicación cliente al usuario.
- App only Access Token: Usarás este token al realizar solicitudes a endpoints que responden con información disponible públicamente en X.
Apps y Projects
Panel del portal de desarrolladores
- Ver tus Apps independientes existentes y su App ID asociado.
- Crear un nuevo Project, App o App independiente.
- DELETE un Project o una App que no estés usando.
- Revisar o actualizar la configuración de una App específica, incluida la actualización del nombre, la descripción, el sitio web, la URL de callback y los permisos.
- Regenerar credenciales específicas de la App, como el API Key y Secret, el App Access Token y los Access Tokens de usuario del propietario de la App.
Registro para obtener acceso
Etiqueta de cuenta automatizada para bots
- Ve a la configuración de tu cuenta
- Selecciona “Tu cuenta”
- Selecciona “Automatización”
- Selecciona “Administración de cuenta”
- A continuación, selecciona la cuenta de X que ejecuta tu cuenta de bot
- Ingresa tu contraseña para iniciar sesión
- Por último, deberías ver la confirmación de que la etiqueta se ha aplicado a tu cuenta.
Administración de Apps
Introducción
- Ver tus Apps y Projects existentes y su App ID asociado.
- Crear un nuevo Project o una App independiente.
- Eliminar un Project, una App o una App independiente.
- Abrir la configuración de una App específica haciendo clic en la configuración de la App. Dentro de la configuración, puedes ver los detalles de la App, keys and tokens y permisos.
- Actualizar la configuración de autenticación de usuario de tu App para usar OAuth 1.0a u OAuth 2.0.
Nota:Todas las keys and tokens de la App ya no son visibles en el portal de desarrolladores y deben guardarse de forma segura en cuanto se generen. Recomendamos usar un gestor de contraseñas para almacenar tus keys and tokens.Puedes mostrar una pista de la API Key para ayudarte a vincular tu credencial con su App correspondiente.
Configuración de la App
Detalles de la App
Keys and tokens
- API Key (Consumer Key) and API Secret (Consumer Secret)
- App Access Token
- User Access Token and Access Token Secret - El Access Token y el Secret disponibles en el portal de desarrolladores corresponden al usuario propietario de la App.
Configuración de autenticación de usuario
Permisos de aplicación-usuario de OAuth 1.0a
Tipo de App para OAuth 2.0
Permisos de la App
Permisos de App de OAuth 1.0a
- Solo lectura
- Lectura y escritura
- Lectura, escritura y acceso a Mensajes Directos
Solo lectura
Lectura y escritura
Lectura, escritura y acceso a los Mensajes Directos
- POST /2/dm_conversations/:dm_conversation_id/messages
- POST /2/dm_conversations/
- POST /2/dm_conversations/with/:participant_id/messages
- GET /2/dm_conversations/with/:user_id/dm_events
- GET /2/dm_conversations/:dm_conversation_id/dm_events
- GET /2/dm_events
Determinación de permisos
x-access-level
en la respuesta HTTP. El valor de ese encabezado indica el nivel de permisos actualmente en uso. Los posibles valores son read, read-write y read-write-directmessages.
URL de callback
- Flujo de código de autorización de OAuth 2.0 con PKCE
- Flujo de OAuth de 3 fases de OAuth 1.0a (y, por separado, el flujo Iniciar sesión con X)
callback_url
al realizar una solicitud al endpoint GET oauth/request_token. De forma similar, los desarrolladores que usan Código de autorización de OAuth 2.0 con PKCE deben pasar el parámetro redirect_uri
en su solicitud al endpoint GET oauth2/authorize.
Además de usar estos parámetros, el desarrollador también debe asegurarse de que la URL de callback se haya agregado a la allowlist de URL de callback de su App, que se encuentra en la página de configuración de la App del portal de desarrolladores.
Si se configura correctamente, los desarrolladores serán redirigidos a la URL de callback después de iniciar sesión correctamente en X como parte de estos flujos.
Aspectos a tener en cuenta
callback_url
o redirect_uri
, asegúrate de codificar la URL en HTTP.
Límites de la URL de callback
Existe un límite rígido de 10 URLs de callback en el panel de X Apps. Tu URL de callback siempre debe coincidir exactamente entre la URL de callback permitida que agregues en el panel de Apps y el parámetro que incluyas en el flujo de autorización.
Si deseas incluir datos específicos de la solicitud en la URL de callback, puedes usar el parámetro state
para almacenar datos que se incluirán después de que el usuario sea redirigido. Puedes codificar los datos en el propio parámetro state
o usar el parámetro como un id de sesión para almacenar el estado en el servidor.
No uses localhost como URL de callback
En lugar de usar localhost, utiliza un host personalizado de forma local o http(s)://127.0.0.1
URLs de protocolo personalizado
Si deseas aprovechar el deep linking en dispositivos móviles, puedes utilizar URLs de protocolo personalizado con una ruta y una parte de dominio, como twitter://callback/path. Sin embargo, tenemos una lista de protocolos no permitidos que deberás evitar. Puedes consultar la lista de protocolos no permitidos a continuación.
Protocolos no permitidos
vbscript | ldap |
javascript | mailto |
vbs | mmst |
data | mmsu |
mocha | msbd |
keyword | rtsp |
livescript | mso-offdap |
ftp | snews |
file | news |
gopher | nntp |
acrobat | outlook |
callto | stssync |
daap | rlogin |
itpc | telnet |
itms | tn3270 |
firefoxurl | shell |
hcp | sip |
Ejemplo de error
HTTP 403 - Forbidden
HTTP 400