Introducción a los endpoints de cronologías de Posts de usuario y menciones
Esta guía de inicio rápido le ayudará a realizar su primera solicitud al endpoint de la cronología de Posts de usuario con un conjunto de fields especificados usando Postman.
Si desea ver código de ejemplo en diferentes lenguajes, visite nuestro repositorio de GitHub X API v2 sample code.
Requisitos previosPara completar esta guía, necesitará un conjunto de keys and tokens para autenticar su solicitud. Puede generar estas keys and tokens siguiendo estos pasos:
Pasos para crear una solicitud de cronologías
Para este ejemplo, haremos una solicitud al endpoint de cronología de Posts de usuario por id, pero también puede aplicar lo aprendido en este inicio rápido a las solicitudes de cronologías de menciones de usuario.
Paso uno: Comience con una herramienta o biblioteca
Existen varias herramientas, ejemplos de código y bibliotecas que puede usar para hacer una solicitud a este endpoint, pero aquí utilizaremos la herramienta Postman para simplificar el proceso.
Para cargar la colección de Postman de X API v2 en su entorno, haga clic en el siguiente botón:
Una vez que haya cargado la colección de X API v2 en Postman, navegue a la carpeta timeline y busque la solicitud “User Post timeline by ID”.
Paso dos: Autentique su solicitud
Para realizar correctamente una solicitud a la X API, debe verificar que tiene permiso. Para hacerlo con este endpoint, debe autenticar su solicitud con OAuth 2.0 App-Only, Código de autorización de OAuth 2.0 con PKCE o Contexto de usuario de OAuth 1.0a.
Para simplificar, utilizaremos OAuth 2.0 App-Only con esta solicitud, pero deberá usar uno de los otros métodos de Autenticación si desea solicitar metrics privadas o Posts.
Debe agregar sus keys and tokens, específicamente el App Access Token (también conocido como App-only Bearer Token), en Postman. Puede hacerlo seleccionando el entorno llamado “X API v2” en la esquina superior derecha de Postman y agregando sus keys and tokens en los campos “initial value” y “current value” (haciendo clic en el ícono de ojo junto al menú desplegable del entorno).
Esta variable se insertará automáticamente en la pestaña de autorización de la solicitud si lo ha hecho correctamente.
Paso tres: Identifique y especifique de qué usuario desea recuperar Posts
Debe especificar un usuario para el cual desea recuperar Posts recientes dentro de la solicitud. En este ejemplo, pasaremos un único user id.
Los user ids son simplemente el valor numérico que representa el handle de una cuenta y que puede encontrar en la URL del perfil de la cuenta. Por ejemplo, el nombre de usuario de la siguiente cuenta es XDevelopers.
https://x.com/XDevelopers
Para convertir este nombre de usuario al user id, deberá usar el users lookup endpoint con el nombre de usuario y encontrar el user id numérico en el payload. En el caso de @XDevelopers, el user id es 2244994945.
En Postman, navegue a la pestaña “Params” e ingrese este user id en la columna “Value” del parámetro id.
Paso cuatro: Identifique y especifique qué fields desea recuperar
Si haces clic en el botón “Send” después del paso tres, recibirás en tu respuesta los campos predeterminados del objeto Post: id y text.
Si deseas recibir campos adicionales más allá de id y text, deberás especificarlos en tu solicitud con los parámetros fields y/o expansions.
Para este ejercicio, solicitaremos tres conjuntos adicionales y distintos de campos de diferentes objetos:
-
El campo adicional tweet.created_at en los objetos de usuario principales.
-
Los campos predeterminados del objeto de usuario de los autores asociados para los Posts devueltos: id, name y username
-
El campo adicional user.created_at en los objetos de usuario asociados.
En Postman, ve a la pestaña “Params” y agrega el siguiente par clave:valor a la tabla “Query Params”:
| | |
|---|
| Key | Value | Returned fields |
tweet.fields | created_at | tweets.created_at |
expansions | author_id | includes.users.id, includes.users.name, includes.users.username |
user.fields | created_at | includes.users.created_at |
| max_results | 5 | |
Ahora deberías ver la siguiente URL junto al botón “Send”:
https://api.x.com/2/users/:id/tweets?tweet.fields=created_at&expansions=author_id&user.fields=created_at&max_results=5
Ten en cuenta:En Postman, el parámetro de ruta :id en el campo URL no se actualizará automáticamente con el valor que ingreses en el campo de params id, por lo que la URL anterior incluye :id y no 2244994945.
Paso cinco: realiza tu solicitud y revisa tu respuesta
Una vez que tengas todo configurado, haz clic en el botón “Send” y recibirás la siguiente respuesta:
"data": [
{
"author_id": "2244994945",
"created_at": "2020-09-03T17:31:39.000Z",
"id": "1301573587187331074",
"text": "Desde hoy, puedes ver tu uso mensual de Tweets de la API v2 en el portal de desarrolladores. ✨📊\n\nEsto muestra cuántos Tweets has recibido del stream filtrado y de la búsqueda reciente. Más información aquí: https://t.co/nfJHkFRQcZ https://t.co/vFXmoj3qaA"
},
{
"author_id": "2244994945",
"created_at": "2020-09-03T15:43:00.000Z",
"id": "1301546240887398401",
"text": "RT @snowman: Construimos una tabla de clasificación de golf en vivo con la X API usando Python, Flask, Postgres y Heroku.\n\nEnvía un Direct con \"leaderboard\"…"
},
{
"author_id": "2244994945",
"created_at": "2020-09-01T20:07:50.000Z",
"id": "1300888112948752389",
"text": "⛳ ¿Por qué los golfistas llevan una camisa extra? Por si hacen un hoyo en uno.\n\nAhora que tenemos tu atención, aprende cómo @snowman y @johnd crearon una tabla de clasificación de golf en tiempo real con la #TwitterAPI. 📖\n\nhttps://t.co/rRKeKmaRrN"
},
{
"author_id": "2244994945",
"created_at": "2020-08-28T23:14:22.000Z",
"id": "1299485505478963200",
"text": "RT @jessicagarson: Publiqué mi primer tutorial en @ThePracticalDev sobre cómo usar la v2 de la Twitter API. Aprenderás a explorar los Tweets de un usuario…"
},
{
"author_id": "2244994945",
"created_at": "2020-08-21T19:10:05.000Z",
"id": "1296887316556980230",
"text": "Descubre cómo @PennMedCDH está usando datos de Twitter para comprender la crisis sanitaria de COVID-19 📊\n\nhttps://t.co/1tdA8uDWes"
}
],
"includes": {
"users": [
{
"created_at": "2013-12-14T04:35:55.000Z",
"id": "2244994945",
"name": "Twitter Dev",
"username": "TwitterDev"
}
]
},
"meta": {
"newest_id": "1301573587187331074",
"next_token": "t3buvdr5pujq9g7bggsnf3ep2ha28",
"oldest_id": "1296887316556980230",
"previous_token": "t3equkmcd2zffvags2nkj0nhlrn78",
"result_count": 5
}
}
Paso seis: pagina tus resultados
En la respuesta anterior, encontrarás al final un objeto meta que incluye los siguientes campos:
- oldest_id
- newest_id
- results_count
- next_token
- previous_token
En el paso cuatro, establecimos un valor de max_results de 5, lo que significa que cada página incluirá como máximo cinco resultados. Para acceder a las páginas adicionales de data, tomaremos el valor del campo next_token de nuestros últimos resultados y añadiremos esa cadena como valor del parámetro pagination_token en la página de params de Postman, manteniendo todo lo demás igual.
| |
|---|
| Key | Value |
pagination_token | t3buvdr5pujq9g7bggsnf3ep2ha28 |
Una vez que todo esté configurado, puedes hacer clic en “Send” nuevamente y deberías recibir la siguiente página de resultados.
Hemos preparado una guía sobre paginación para explicar más a fondo este concepto.
Siguientes pasos
Personaliza tu solicitud usando la referencia de la API
Pide ayuda a la comunidad