Saltar al contenido principal
Los endpoints de X API v2 cuentan con un conjunto de parámetros llamados fields, que te permiten seleccionar solo los datos que necesitas de cada uno de los objetos en la respuesta del endpoint. De forma predeterminada, el Objeto de Post solo devuelve los campos id y text y, para los Posts creados desde el 29 de septiembre de 2022, el campo edit_history_tweet_ids. Si necesitas la fecha de creación del Post o los public metrics, deberás usar el parámetro tweet.fields para solicitarlos. Esto ofrece un mayor grado de personalización al permitirte solicitar únicamente los fields que requieras según tu caso de uso. Por ejemplo, incluirías esta cadena de query en tu solicitud: ?tweet.fields=created_at,public_metrics Cada objeto tiene su propio parámetro, que se utiliza para solicitar específicamente los fields asociados con ese objeto. Estos son los diferentes parámetros de fields que están disponibles actualmente:
  • Posttweet.fields
  • Useruser.fields
  • Mediamedia.fields
  • Pollpoll.fields
  • Placeplace.fields
Al usar un endpoint que devuelve principalmente un objeto en particular, simplemente utiliza el parámetro de fields correspondiente y especifica los field(s) deseados en una lista separada por comas como valor de ese parámetro para recuperar esos fields en la respuesta.

Ejemplo

Si utiliza el endpoint GET /tweets/search/recent, recibirá principalmente objetos Tweet en esa respuesta. Sin especificar ningún parámetro fields, solo recibirá los valores predeterminados, id y text. Si le interesa recibir las métricas públicas de los Posts que se devuelven en la respuesta, deberá incluir el parámetro tweet.fields en su solicitud, con public_metrics como valor. Esta solicitud se vería de la siguiente manera. Si desea usar esta solicitud, asegúrese de reemplazar $BEARER_TOKEN por su Bearer Token y envíela con su herramienta de línea de comandos.
curl --request GET \
  --url 'https://api.x.com/2/tweets/search/recent?query=from%3Atwitterdev&tweet.fields=public_metrics' \
  --header 'Authorization: Bearer $BEARER_TOKEN'
Si envías esta solicitud en tu terminal, cada uno de los Posts que se devuelvan incluirá los siguientes fields:
{
   "data": {
       "id": "1263150595717730305",
       "public_metrics": {
           "retweet_count": 12,
           "reply_count": 14,
           "like_count": 49,
           "quote_count": 7
       },
       "text": "¿Ya viste 👀 nuestras nuevas configuraciones de Tweet?\n\nQueremos saber cómo y por qué usarías una función como esta en la API. Obtén los detalles y cuéntanos qué opinas👇\nhttps://t.co/RtMhhfAcIB https://t.co/8wxeZ9fJER"
   }
}
Si desea recuperar un conjunto de fields de un objeto secundario asociado al objeto principal que devuelve un endpoint, deberá incluir un parámetro adicional de expansions. Por ejemplo, si estuviera usando el mismo endpoint GET search/tweets/recent que antes y quisiera recuperar la descripción del perfil del autor, tendrá que pasar expansions=author_id y user.fields=description en su solicitud. A continuación se muestra un ejemplo de cómo podría verse. Si desea probar esta solicitud, asegúrese de reemplazar $BEARER_TOKEN por su Bearer Token antes de pegarla en su herramienta de línea de comandos.
  curl --request GET \
  --url 'https://api.x.com/2/tweets/search/recent?query=from%3Atwitterdev&tweet.fields=public_metrics&expansions=author_id&user.fields=description' \
  --header 'Authorization: Bearer $BEARER_TOKEN'
Si especificas esto en la solicitud, cada uno de los Posts entregados incluirá los siguientes campos, y los campos predeterminados y especificados del objeto de usuario se devolverán dentro de includes. El objeto de usuario puede vincularse al/los Post(s) correspondiente(s) haciendo coincidir tweet.author_id y el campo users.id.
{
  "data": [
    {
      "id": "1263150595717730305",
      "author_id": "2244994945",
      "text": "¿Ya viste 👀 nuestra nueva configuración de Tweet?\n\nQueremos saber cómo y por qué usarías una función como esta en la API. Consulta los detalles y cuéntanos qué te parece👇\nhttps://t.co/RtMhhfAcIB https://t.co/8wxeZ9fJER",
      "public_metrics": {
        "retweet_count": 12,
        "reply_count": 13,
        "like_count": 51,
        "quote_count": 7
      }
    }
  ],
  "includes": {
    "users": [
      {
        "id": "2244994945",
        "username": "TwitterDev",
        "description": "La voz del equipo #TwitterDev y tu fuente oficial de novedades, noticias y eventos relacionados con la #TwitterAPI.",
        "name": "Twitter Dev"
      }
    ]
  }
}
Tenga en cuenta que no puede solicitar subfields específicos (por ejemplo, public_metrics.retweet_count). Todos los subfields se devolverán cuando se especifique el campo de nivel superior (public_metrics). Hemos enumerado todos los posibles fields que puede solicitar en la tabla de parámetros de la página de referencia de la API de cada endpoint. La lista completa de fields se encuentra en el modelo de objeto. Para solicitar fields de un objeto que no es el recurso principal de ese endpoint, use el parámetro expansions junto con fields.
I