Skip to main content

Cronologías estándar v1.1 a cronologías de X API v2

Si has estado trabajando con los endpoints de cronologías v1.1 (statuses/user_timeline y statuses/mentions_timeline), el objetivo de esta guía es ayudarte a entender las similitudes y diferencias entre los endpoints de cronologías estándar y los de X API v2, de modo que puedas migrar tu integración actual a la nueva versión.
  • Similitudes:
    • Autenticación:
      • OAuth 1.0a User Context (cronología de inicio en orden cronológico inverso, cronología de Publicaciones de usuario y cronología de menciones de usuario)
      • OAuth 2.0 App-Only (cronología de Publicaciones de usuario)
    • Límite de acceso histórico: la cronología de usuario (cronología de Publicaciones de usuario) proporciona acceso a las 3200 Publicaciones más recientes; la cronología de menciones (cronología de menciones de usuario) proporciona acceso a las 800 menciones más recientes.
    • Compatibilidad con historial de edición de la Publicación y metadatos
    • Límites de tasa (cronología de Publicaciones de usuario)
    • Sondeo de actualización: posibilidad de recuperar nuevos resultados desde el since_id
    • Recorrido de cronologías por ID de Publicación
    • Especificaciones de resultados:
      • Orden de resultados: resultados devueltos en orden cronológico inverso
      • Posibilidad de excluir respuestas (solo cronología de Publicaciones de usuario)
      • Posibilidad de excluir Retweets (solo cronología de Publicaciones de usuario)
  • Diferencias
    • Nueva capacidad de autenticación:
      • OAuth 2.0 App-Only (cronología de menciones de usuario)
      • OAuth 2.0 Authorization Code Flow with PKCE (cronología de inicio en orden cronológico inverso, cronología de Publicaciones de usuario y cronología de menciones de usuario)
    • Requisitos de acceso: requisitos de App y de proyecto de X API v2
    • Límites de tasa (cronología de menciones de usuario y cronología de inicio en orden cronológico inverso)
    • Método de paginación adicional
      • Diferente max_results (count) por respuesta
    • Formato de datos de la respuesta
    • Parámetros de la solicitud
      • Formato de datos personalizado según los parámetros de la solicitud, incluidos los campos v2 y expansions
      • Datos adicionales disponibles: métricas, anotaciones de Publicación, encuestas

Similitudes

Autenticación El endpoint v1.1 statuses/user_timeline y el endpoint de timeline de Publicaciones de usuario de X API v2 admiten tanto OAuth 1.0a User Context como OAuth 2.0 App-Only. Por lo tanto, puedes seguir usando el mismo método de autenticación y los mismos tokens de autorización si migras a la versión de X API v2. Acceso histórico Tanto v1.1 statuses/user_timeline como el endpoint de timeline de Publicaciones de usuario de X API v2 devolverán las 3200 Publicaciones más recientes, incluidos los Retweets. Los endpoints v1.1 statuses/mentions_timeline y el timeline de menciones de usuario de X API v2 pueden devolver las 800 Publicaciones más recientes. Compatibilidad con el historial de edición de Publicaciones y metadatos Ambas versiones proporcionan metadatos que describen cualquier historial de edición. Consulta las Referencias de la API de flujo filtrado y la página de fundamentos de edición de Publicaciones para obtener más detalles. Límites de tasa
Standard v1.1X API v2
user_timeline:

900 solicitudes cada 15 minutos con OAuth 1.0a User Context

1500 solicitudes cada 15 minutos con OAuth 2.0 App-Only
Timeline de Publicaciones de usuario:

900 solicitudes por ventana de 15 minutos con OAuth 1.0a User Context

1500 solicitudes por ventana de 15 minutos con OAuth 2.0 App-Only
Actualización mediante sondeo usando since_id Ambas versiones permiten sondear en busca de resultados recientes usando since_id. Recorrido de timelines por ID de Publicación Ambos endpoints tienen la capacidad de recorrer timelines usando ‘timestamps’ de ID de Publicación basados en la forma en que se construyen las ID de Publicación. La funcionalidad es, en general, la misma, excepto por lo siguiente:
Standard timelines v1.1timelines v2
since_id (exclusivo)

max_id (inclusivo)
since_id (exclusivo)

until_id (también exclusivo, frente a max_id, que era inclusivo)
Parámetros de filtrado de respuesta
Standard timelines v1.1timelines v2
Parámetros de filtrado de respuesta:

* include_rts
* exclude_replies
Parámetros de filtrado de respuesta:

* exclude=retweets,replies
Ejemplo

https://api.x.com/1.1/statuses/user_timeline.json?user_id=2244994945&include_rts=0&&exclude_replies=1
Ejemplo:

https://api.x.com/2/users/2244994945/tweets?max_results=100&exclude=retweets,replies
Notas:

Para user_timeline:

* Usar include_rts=0 no cambia el posible límite histórico de Publicaciones de las 3200 más recientes
Notas:

Para el timeline de Publicaciones de usuario:

* Usar exclude=retweets no cambia el posible límite histórico de Publicaciones de las 3200 más recientes
* Usar exclude=replies reduce el posible límite histórico de Publicaciones a las 800 respuestas más recientes

Diferencias

Autenticación **El endpoint v1.1 statuses/mentions_timeline solo admite OAuth 1.0a User Context. El endpoint de timeline de menciones de usuario de X API v2 admite OAuth 1.0a User Context, OAuth 2.0 App-Only y OAuth 2.0 Authorization Code with PKCE ** Si deseas aprovechar la posibilidad de acceder a métricas privadas o promocionadas mediante el endpoint de timeline de Publicaciones de usuario de X API v2, deberás usar OAuth 1.0a User Context u OAuth 2.0 Authorization Code with PKCE y pasar los tokens de acceso de usuario relacionados con el usuario que publicó la Publicación para la cual deseas acceder a las métricas. URLs de los endpoints Ten en cuenta que los endpoints de timelines de X API v2 requieren un parámetro de ruta :id para el id de usuario. Requisitos de App y Project Los endpoints de X API v2 requieren que uses credenciales de una developer App que esté asociada a un Project al autenticar tus solicitudes. Todos los endpoints de X API v1.1 pueden usar credenciales de Apps o de Apps asociadas con un Project. Límites de tasa
mentions_timeline:

75 solicitudes por 15 min con OAuth 1.0a User Context
**user mention timeline: **

180 solicitudes por ventana de 15 minutos con OAuth 1.0a User Context
450 solicitudes por ventana de 15 minutos con OAuth 2.0 Bearer Token
home_timelime:

15 solicitudes por 15 minutos

Se pueden obtener hasta 800 Publicaciones en el home timeline
reverse chronological home timeline:

180 solicitudes por 15 minutos

Puedes recuperar todas las Publicaciones creadas en un timeline durante los últimos 7 días, así como las 800 más recientes, independientemente de la fecha de creación.
Parámetros de la solicitud
Standard timelines v1.1timelines v2
Obligatorio: user_id o screen_nameObligatorio: se indica el ID de usuario específico en el parámetro de la ruta
Opcional:

count - establece el número máximo de resultados devueltos por solicitud

exclude_replies - elimina las respuestas de los resultados

Include_rts - cuando se establece en 0 elimina los Retweets de los resultados

trim_user - elimina los objetos de usuario rehidratados de los resultados

tweet_mode - establece el formato de datos devuelto para los resultados; establézcalo en extended para Publicaciones de más de 140 caracteres

since_id - establece el ID de Publicación más antiguo en el resultado (exclusivo)

max_id - establece el ID de Publicación más reciente en el resultado (incluido)
Opcional:

max_results - establece el número máximo de resultados devueltos por solicitud

exclude=retweets,replies - elimina los Retweets o las respuestas de los resultados

tweet.fields - establece los campos del objeto Publicación que se devolverán

user.fields - establece los campos del objeto User que se devolverán

place.fields - establece los campos del objeto place que se devolverán

media.fields - establece los campos del objeto media que se devolverán

poll.fields - establece los campos del objeto poll que se devolverán

expansions - establece los campos y datos expandidos que se devolverán

start_time - establece la marca de tiempo created_at más temprana para los resultados

end_time - establece la marca de tiempo created_at más reciente para los resultados

since_id - establece el ID de Publicación más antiguo para los resultados (exclusivo)

until_id - establece el ID de Publicación más reciente en el resultado (exclusivo)
Formato de datos de la respuesta
Standard search v1.1Search Posts v2
[
objeto Tweet,
objeto Tweet
]

“data”: [id,text,id,text],
“meta”:
“oldest_id”: “1337085692623646724”,
“newest_id”: “1334183616172019713”,
“previous_token”: “77qpymm88g5h9vqkluldpw91lr0qzfz1sqydh841iz48k”,
“result_count”: 10,
“next_token”: “7140dibdnow9c7btw3w29gqolns6a1ipl3kzeae41vsxk”

Formato JSON de X API v2 X API v2 introduce nuevos diseños JSON para los objetos devueltos por las APIs, incluidos los objetos de Publicación y de usuario. Puede obtener más información sobre el formato de X API v2 y cómo usar campos y Expansions visitando nuestra guía y leyendo nuestro diccionario de datos más completo.
  • En el nivel raíz de JSON, los endpoints estándar devuelven objetos de Publicación en un array statuses, mientras que X API v2 devuelve un array data.
  • En lugar de hacer referencia a “statuses” Retweeted y Quoted, el JSON de X API v2 hace referencia a Tweets Retweeted y Quoted. Muchos campos heredados y obsoletos, como contributors y user.translator_type, se están eliminando.
  • En lugar de usar tanto favorites (en el objeto de Publicación) como favorites (en el objeto de usuario), X API v2 usa el término like.
  • X está adoptando la convención de que los valores JSON sin valor (por ejemplo, null) no se escriben en el payload. Los atributos de Publicación y de usuario solo se incluyen si tienen un valor distinto de null.
Una de las mayores diferencias entre las versiones de endpoints estándar v1.1 y X API v2 es cómo selecciona qué campos se devuelven en su payload. Para los endpoints estándar, hay varios parámetros que puede usar para identificar qué campos o conjuntos de campos se devolverían en el payload, mientras que la versión de X API v2 simplifica estos diferentes parámetros en campos y expansions.
  • fields: los endpoints de X API v2 permiten seleccionar qué campos se incluyen en tu payload. Por ejemplo, los objetos de Publicación, usuario, Media, Place y Poll tienen cada uno una lista de campos que se pueden devolver (o no).
  • expansions: se usan para expandir los objetos complementarios referenciados en los payloads JSON de Publicación. Por ejemplo, todos los Retweets y respuestas hacen referencia a otras Publicaciones. Al establecer expansions=referenced_tweets.id, estos otros objetos de Publicación se expanden de acuerdo con la configuración de tweet.fields. Otros objetos como usuarios, polls y media también se pueden expandir.
  • conversation_id
  • Dos nuevos campos de annotations, incluidos context y entities
  • Varios campos nuevos de metrics
Hemos preparado una guía de migración de formato de datos que puede ayudarte a mapear los campos estándar de v1.1 a los campos más nuevos de v2. Esta guía también te proporcionará el parámetro específico expansions y fields que deberás pasar con tu solicitud a v2 para devolver campos específicos.

Ejemplos de código

Cronología de Publicaciones de un usuario (v2)

cURL
curl "https://api.x.com/2/users/2244994945/tweets?max_results=100&tweet.fields=created_at,public_metrics&exclude=retweets,replies" \
  -H "Authorization: Bearer $BEARER_TOKEN"

Cronología de menciones de usuario (v2)

cURL
curl "https://api.x.com/2/users/2244994945/mentions?max_results=100&tweet.fields=created_at,author_id" \
  -H "Authorization: Bearer $BEARER_TOKEN"
Próximos pasos Consulta nuestra guía de inicio rápido para la consulta de Publicaciones con X API v2 Revisa la Referencia de la API para la consulta de Publicaciones en v2 Consulta nuestro código de ejemplo para los endpoints de cronologías