Introducción
¿Durante cuánto tiempo serán válidas mis credenciales?
De forma predeterminada, el access token que creas mediante el Authorization Code Flow with PKCE solo será válido durante dos horas, a menos que hayas utilizado el alcanceoffline.access
.
Tokens de actualización
offline.access
, se emitirá un refresh token de OAuth 2.0. Con este refresh token, se obtiene un access token. Si este scope no se incluye, no generaremos un refresh token.
Un ejemplo de la solicitud que realizaría para usar un refresh token y obtener un nuevo access token es el siguiente:
Configuración de la App
Clientes confidenciales
Scopes
Scope | Descripción |
tweet.read | Todos los Tweets que puedes ver, incluidos los de cuentas protegidas. |
tweet.write | Publicar Tweets y hacer Retweets en tu nombre. |
tweet.moderate.write | Ocultar y mostrar respuestas a tus Tweets. |
users.email | Correo electrónico de un usuario autenticado. |
users.read | Cualquier cuenta que puedas ver, incluidas las cuentas protegidas. |
follows.read | Personas que te siguen y personas a las que sigues. |
follows.write | Seguir y dejar de seguir personas en tu nombre. |
offline.access | Mantener la conexión a tu cuenta hasta que revoques el acceso. |
space.read | Todos los Spaces que puedes ver. |
mute.read | Cuentas que has silenciado. |
mute.write | Silenciar y dejar de silenciar cuentas en tu nombre. |
like.read | Tweets que has marcado con like y likes que puedes ver. |
like.write | Dar y quitar like a Tweets en tu nombre. |
list.read | Lists, miembros de listas y seguidores de listas que has creado o de las que eres miembro, incluidas las listas privadas. |
list.write | Crear y administrar Lists en tu nombre. |
block.read | Cuentas que has bloqueado. |
block.write | Bloquear y desbloquear cuentas en tu nombre. |
bookmark.read | Obtener Tweets guardados (Bookmarks) de un usuario autenticado. |
bookmark.write | Agregar y quitar Bookmarks de Tweets. |
media.write | Subir contenido multimedia. |
Límites de velocidad
Tipos de grant
Flujo de OAuth 2.0
Glosario
Término | Descripción |
Tipos de grant | El framework OAuth especifica varios tipos de grant para diferentes casos de uso y un marco para crear nuevos tipos de grant. Algunos ejemplos son authorization code, client credentials, device code y refresh token. |
Cliente confidencial | Los clientes son aplicaciones que pueden autenticarse de forma segura con el servidor de autorización, por ejemplo, manteniendo a salvo su client secret registrado. |
Cliente público | Clientes que no pueden usar client secrets registrados, como las aplicaciones que se ejecutan en un navegador o en un dispositivo móvil. |
Flujo de authorization code | Utilizado tanto por clientes confidenciales como públicos para intercambiar un authorization code por un access token. |
PKCE | Una extensión del flujo de authorization code para prevenir varios ataques y permitir realizar de forma segura el intercambio OAuth desde clientes públicos. |
Client ID | Se encuentra en la sección de keys and tokens del portal de desarrolladores, bajo el encabezado “Client ID”. Si no lo ves, ponte en contacto directamente con nuestro equipo. El Client ID será necesario para generar la URL de authorize. |
Redirect URI | Tu URL de callback. Deberás contar con validación de coincidencia exacta. |
Authorization code | Permite que una aplicación llame a APIs en nombre de los usuarios. Conocido como auth_code. El auth_code tiene un límite de tiempo de 30 segundos una vez que el propietario de la App recibe un auth_code aprobado del usuario. Deberás intercambiarlo por un access token dentro de 30 segundos o el auth_code caducará. |
Access token | Los Access Tokens son el token que las aplicaciones usan para realizar solicitudes a la API en nombre de un usuario. |
Refresh token | Permite que una aplicación obtenga un nuevo access token sin solicitar intervención del usuario mediante el flujo de refresh token. |
Client Secret | Si has seleccionado un tipo de App que sea un cliente confidencial, se te proporcionará un “Client Secret” debajo de “Client ID” en la sección de keys and tokens de tu App. |
Parámetros
Parameter | Description |
response_type | Debe especificar que se trata de un código con la palabra “code”. |
client_id | Se encuentra en el portal de desarrolladores bajo el encabezado “Client ID”. |
redirect_uri | Su URL de callback. Este valor debe corresponder a una de las Callback URLs definidas en la configuración de su App. Para OAuth 2.0, debe contar con validación de coincidencia exacta para su URL de callback. |
state | Una cadena aleatoria que usted proporciona para protegerse contra ataques CSRF. La longitud de esta cadena puede ser de hasta 500 caracteres. |
code_challenge | Un parámetro PKCE, un secreto aleatorio para cada solicitud que realice. |
code_challenge_method | Especifica el método que está utilizando para realizar la solicitud (S256 o plain). |