Skip to main content

Introducción

Con el lanzamiento de la versión v2 de la X API, hemos adoptado un nuevo formato de respuesta de datos y un nuevo método para solicitar distintos objetos y campos, al que simplemente llamamos formato de X API v2.  En la sección de diferencias generales, puedes conocer algunos cambios relevantes para usuarios estándar y empresariales. Sin embargo, también hemos preparado una guía específica para el formato nativo estándar v1.1, el formato Native Enriched para empresas y el formato Activity Streams para empresas, que ayuda a mapear campos y explica qué campos y expansions debes usar para solicitar los nuevos campos de v2.  También puede interesarte nuestra herramienta visual de migración de formato de datos, que te ayuda a ver rápidamente las diferencias entre el formato de datos de X API v1.1 y el formato de X API v2.

Diferencias generales

Solicitar objetos y campos

Uno de los cambios más importantes entre los endpoints anteriores a v2 y los de v2 es que la versión más reciente solo devuelve unos pocos campos de forma predeterminada, mientras que los endpoints estándar, premium y enterprise devuelven la mayoría de los campos por defecto. La nueva versión utiliza parámetros llamados fields y expansions para solicitar específicamente datos adicionales más allá de los valores predeterminados, lo que significa que puedes solicitar solo los datos que necesitas sin tener que procesar campos que no te interesan.  Cualquier campo que solicites que esté relacionado con el objeto de datos primario se devolverá en ese objeto de datos primario junto con los valores predeterminados. Sin embargo, si solicitas objetos expandidos usando el parámetro expansions, los objetos secundarios se devolverán en un nuevo objeto includes. Puedes relacionar los objetos expandidos del objeto includes con el objeto principal utilizando el campo id, que se devolverá en ambos. Por ejemplo, si estás utilizando el endpoint v2 Post lookup e incluyes el parámetro expansions=author_id en tu solicitud, recibirás el campo author_id dentro del objeto principal de la Publicación, así como un objeto user por Publicación en el objeto includes, cada uno de los cuales incluirá el campo id predeterminado que se puede usar para relacionar el objeto user con el objeto de la Publicación. A continuación se muestra un ejemplo de cómo se ve esto:

Diseño JSON actualizado

Además de los cambios en cómo solicitas ciertos campos, X API v2 también introduce nuevos diseños JSON para los objetos que devuelven las API, incluidos los objetos de Publicación y de usuario.
  • En el nivel raíz del 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” retuiteados y citados, el JSON de X API v2 hace referencia a Tweets retuiteados y citados. 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 favourites (en el objeto de usuario), X API v2 usa el término like. 
  • X adopta la convención de que los valores JSON que no tienen valor (por ejemplo, null) no se incluyen en la carga útil. Los atributos de Publicación y de usuario solo se incluyen si tienen valores no nulos.   

Nuevos campos en v2

También introdujimos un nuevo conjunto de campos en el objeto Publicación que incluye lo siguiente:
  • Un campo conversation_id
  • Dos nuevos campos de annotations, incluidos context y entities
  • Varios campos nuevos de metrics 
  • Un nuevo campo reply_setting, que indica quién puede responder a una determinada Publicación

Migrar del formato de datos estándar de v1.1 a v2

Si aún no lo has hecho, te recomendamos que primero leas la introducción a la migración de formatos de datos. También puede interesarte nuestra herramienta visual de migración de formatos de datos, que te ayuda a ver rápidamente las diferencias entre el formato de datos de X API v1.1 y el formato de datos de X API v2. El formato de datos estándar de v1.1, también conocido como formato nativo, es el formato principal que se ofrece con los endpoints estándar de v1.1. Si estás usando el producto premium, consulta la guía de datos nativos enriquecidos. Los clientes empresariales podrían estar usando datos nativos enriquecidos o flujos de actividad, según cómo esté configurada tu cuenta en la consola de Gnip. 

Estructura del payload estándar v1.1 vs v2

La siguiente tabla muestra los objetos de alto nivel y el formato que puedes esperar recibir de v2 en comparación con el formato de v1.1. Asignación de campos La siguiente sección describe qué campos de v1.1 se asignan a campos de v2, así como qué parámetros de v2 son necesarios para recibir el nuevo campo.  

Objeto Tweet

Ejemplo

Objeto de usuario

Ejemplo

Objetos de entidades y entidades ampliadas

Ejemplo

Objeto Place

Ejemplo Próximo paso

Migrar del formato de datos Native Enriched a v2

El formato de datos Native Enriched lo utilizan nuestros productos enterprise. El formato de datos Native Enriched se ha actualizado para proporcionar metadatos de Tweets editados. Para obtener más información sobre los metadatos de edición de Tweets, consulta la página Edit Tweets fundamentals. Si estás utilizando los endpoints estándar v1.1, consulta la guía de estándar v1.1 a v2. Si estás utilizando los productos enterprise con Activity Streams, también tenemos una guía de Activity Streams a v2 para ti. X API v2 introduce nuevos diseños JSON para los objetos Tweet y user.
  • En el nivel raíz de JSON, el formato Native Enriched devuelve objetos Tweet en un array results, mientras que X API v2 devuelve un array data. 
  • En lugar de usar tanto favorites (en el objeto Tweet) como favourites (en el objeto user), X API v2 utiliza 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 Tweet y user solo se incluyen si tienen valores distintos de null. 
  • Todos los campos id en v2 estarán en formato de cadena.  
Además de los cambios realizados en el nuevo formato JSON, también hemos introducido un nuevo conjunto de campos en el objeto Tweet, entre ellos los siguientes:
  • conversation_id
  • reply_settings
  • alt_text en media
  • Dos nuevos campos de annotations, incluidos context y entities
  • Varios campos nuevos de metrics
  • Varios campos nuevos de polls  
Se están eliminando muchos campos heredados y obsoletos:
  • contributors
  • Ciertos campos de entities.media y extended_entities.media
  • filter_level
  • timestamp_ms
  • truncated

Estructura del payload de Native Enriched vs v2

La siguiente tabla muestra los objetos de alto nivel y el formato que puedes esperar recibir de v2 en comparación con el formato Native Enriched. Asignación de campos La siguiente sección describe qué campos de Native Enriched se asignan a campos de v2, así como qué parámetros de v2 son necesarios para recibir el nuevo campo.  

Objeto Tweet

Objeto de usuario

Objetos de entidades y de entidades ampliadas

Objeto Place

Objeto de encuesta

Migración del formato de datos Activity Streams a v2

El formato de datos Activity Streams está disponible con nuestros productos enterprise. El formato de datos Activity Streams se ha actualizado para proporcionar metadatos de Tweets editados. Para obtener más información sobre los metadatos de edición de Tweets, consulta la página de conceptos básicos de Edit Tweets. Si estás usando los endpoints estándar v1.1, consulta la guía de v1.1 estándar a v2. Si estás usando los endpoints premium o el formato Native Enriched para enterprise, consulta la guía de Native Enriched a v2. X API v2 introduce nuevos diseños JSON para los objetos de Publicación y usuario.
  • A nivel raíz de JSON, el formato Activity Streams devuelve objetos Tweet en un arreglo results, mientras que X API v2 devuelve un arreglo data. 
  • En lugar de hacer referencia a “actividades” Retweeted y Quoted, el JSON de X API v2 se refiere a Tweets Retweeted y Quoted. 
  • En lugar de usar tanto favorites (en el objeto Tweet) como favourites (en el objeto user), X API v2 utiliza el término like. 
  • Twitter está adoptando la convención de que los valores JSON sin contenido (por ejemplo, null) no se incluyan en la carga útil. Los atributos de Tweet y user solo se incluyen si tienen valores no nulos. 
  • Todos los campos id en v2 estarán en formato de cadena.  
Además de los cambios realizados en el nuevo formato JSON, también hemos introducido un nuevo conjunto de campos en el objeto Tweet, incluidos los siguientes:
  • conversation_id
  • reply_settings
  • alt_text en media
  • Dos nuevos campos de annotations, incluidos context y entities
  • Varios campos nuevos de metrics
  • Varios campos nuevos de polls  
Muchos campos heredados y obsoletos se están eliminando o reemplazando:
  • display_text_range
  • generator
  • gnip
  • link
  • objectType
  • provider
  • twitter_entities.symbols se reemplaza por data.entities.cashtags
  • Ciertos campos de twitter_extended_entities.media y twitter_entities.media
  • twitter_filter_level
  • twitterTimeZone
  • verb

Objeto Tweet

Objeto de usuario

Objeto Poll

Objeto Place

Objeto multimedia

Objeto de reglas de coincidencia

Herramienta visual de migración de formato de datos

La herramienta visual de migración de formato de datos es una aplicación web que muestra los campos que se asignan desde el formato de datos de X API v1.1 al formato de datos de X API v2 para un objeto de tipo Tweet o usuario determinado. Se puede proporcionar a la aplicación un Tweet ID o un user ID para ver esta asignación. Ten en cuenta que deberás iniciar sesión con tu cuenta de Twitter para poder usar la App.