Skip to main content
L’X API renvoie des objets JSON structurés représentant des Publications, des utilisateurs, des médias, et plus encore. Cette référence répertorie tous les champs disponibles pour chaque type d’objet.
Utilisez les paramètres fields pour demander des champs spécifiques, et les expansions pour inclure les objets associés.

Publication (Tweet)

Les Publications sont l’unité de contenu principale sur X. Chaque objet Publication inclut du texte, des métadonnées et des références à des objets associés comme les auteurs, les médias et les sondages. Champs par défaut : id, text, edit_history_tweet_ids Utilisez tweet.fields pour demander des champs supplémentaires et expansions pour inclure des objets associés.

Tous les champs de Publication

Récupérer un objet Tweet Exemple de requête Dans la requête suivante, nous demandons des champs pour le Tweet via l’endpoint Tweets lookup. Assurez-vous de remplacer $BEARER_TOKEN par votre propre Jeton Bearer que vous avez généré.
Exemple de réponse

Utilisateur

L’objet user contient les métadonnées du compte utilisateur Twitter décrivant l’utilisateur référencé. L’objet user est l’objet principal renvoyé par l’endpoint users lookup. Lorsque vous demandez des champs utilisateur supplémentaires sur cet endpoint, utilisez simplement le paramètre user.fields. L’objet user peut également apparaître comme objet enfant et être étendu dans l’objet Tweet. L’objet peut être obtenu via l’extension ?expansions=author_id ou ?expansions=in_reply_to_user_id pour récupérer l’objet condensé avec uniquement les champs par défaut. Utilisez cette extension avec le paramètre user.fields lorsque vous demandez des champs supplémentaires pour compléter l’objet.   Récupérer un objet utilisateur Exemple de requête Dans la requête suivante, nous demandons des champs pour l’utilisateur via l’endpoint users lookup. Assurez-vous de remplacer $BEARER_TOKEN par votre propre Jeton Bearer.
Exemple de réponse

Space

Les Spaces permettent l’expression et l’interaction via des conversations audio en direct. Le dictionnaire de données Space contient les métadonnées pertinentes à propos d’un Space ; tous les détails y sont mis à jour en temps réel. Les objets User peuvent être trouvés et étendus dans la ressource user. Ces objets peuvent être inclus via expansions en ajoutant au moins l’un de host_ids, creator_id, speaker_ids, mentioned_user_ids au paramètre de requête expansions. Contrairement aux Tweets, les Spaces sont éphémères et deviennent indisponibles après leur fin ou lorsqu’ils sont annulés par leur créateur. Lorsque votre application gère des données de Spaces, vous êtes responsable de renvoyer les informations les plus récentes et devez supprimer les données qui ne sont plus disponibles sur la plateforme. Les endpoints de recherche de Spaces peuvent vous aider à vous assurer que vous respectez les attentes et l’intention des utilisateurs. **Récupération d’un objet Space ** Exemple de requête Dans la requête suivante, nous demandons des champs pour le Space sur l’endpoint de recherche Spaces. Assurez-vous de remplacer $BEARER_TOKEN par votre propre Jeton Bearer que vous aurez généré.
** Exemple de réponse **

Liste

L’objet Liste contient les métadonnées des Listes Twitter décrivant la Liste référencée. L’objet Liste est l’objet principal renvoyé par l’endpoint de recherche de Liste. Lorsque vous demandez des champs supplémentaires pour les Listes via cet endpoint, utilisez simplement le paramètre de champs list.fields. L’objet Liste ne se trouve pas comme enfant d’autres objets de données. En revanche, les objets utilisateur peuvent être trouvés et développés dans la ressource user. Ces objets peuvent être inclus via expansion en ajoutant owner_id au paramètre de requête expansions. Utilisez cette expansion avec le paramètre de champs list.fields lorsque vous demandez des champs supplémentaires afin de compléter l’objet Liste principal, et user.fields pour compléter l’objet d’extension. Récupération d’un objet utilisateur Exemple de requête Dans la requête suivante, nous demandons des champs pour l’utilisateur sur l’endpoint List lookup by ID. Remplacez $BEARER_TOKEN par votre Jeton Bearer généré.
** Exemple de réponse**

Médias

Les médias désignent toute image, GIF ou vidéo jointe à un Tweet. L’objet média n’est pas un objet primaire sur un endpoint, mais il peut être trouvé et étendu dans l’objet Tweet. L’objet est disponible via le paramètre ?expansions=attachments.media_keys pour obtenir l’objet condensé avec uniquement les champs par défaut. Utilisez ce paramètre avec le paramètre de champs media.fields lorsque vous demandez des champs supplémentaires pour compléter l’objet. Récupération d’un objet média Exemple de requête Dans la requête suivante, nous demandons des champs pour l’objet média associé au Tweet sur l’endpoint Tweet lookup. Comme média est un objet enfant d’un Tweet, l’expansion attachment.media_keys est requise. Assurez-vous de remplacer $BEARER_TOKEN par votre propre Jeton Bearer que vous avez généré.

Sondage

Un sondage inclus dans un Tweet n’est pas un objet principal sur un endpoint, mais il peut être retrouvé et développé dans l’objet Tweet. Cet objet est disponible pour être développé avec ?expansions=attachments.poll_ids afin d’obtenir l’objet condensé avec uniquement les champs par défaut. Utilisez cette expansion avec le paramètre de champs : poll.fields lorsque vous demandez des champs supplémentaires pour compléter l’objet. Récupération d’un objet sondage Exemple de requête Dans la requête suivante, nous demandons des champs pour l’objet sondage attaché au Tweet sur l’endpoint Tweets lookup. Étant donné que le sondage est un objet enfant d’un Tweet, l’expansion attachments.poll_id est requise. Veillez à remplacer $BEARER_TOKEN par votre propre Jeton Bearer généré.
Exemple de réponse

Lieu

Le lieu tagué dans un Tweet n’est pas un objet principal renvoyé directement par un endpoint, mais il peut être récupéré et étendu dans la ressource Tweet. L’objet est disponible pour une expansion avec ?expansions=geo.place_id afin d’obtenir l’objet condensé avec uniquement les champs par défaut. Utilisez l’expansion avec le paramètre de champs : place.fields lorsque vous demandez des champs supplémentaires pour compléter l’objet. Récupération d’un objet place Exemple de requête Dans la requête suivante, nous demandons des champs pour l’objet place attaché au Tweet sur l’endpoint Tweets lookup. Comme place est un objet enfant d’un Tweet, l’expansion geo.place_id est requise. Veillez à remplacer $BEARER_TOKEN par votre propre Jeton Bearer généré.
Exemple de réponse

Événements de Direct Message

Les conversations de Direct Message (DM) sont constituées d’événements. L’X API v2 prend actuellement en charge trois types d’événements : MessageCreate, ParticipantsJoin et ParticipantsLeave. Les objets d’événements de DM sont renvoyés par les endpoints Direct Message lookup, et un événement MessageCreate est créé lorsque des Direct Messages sont créés avec succès via les endpoints Manage Direct Messages. Lors de la requête d’événements de DM, trois attributs d’objet d’événement par défaut, ou champs, sont inclus : id, event_type et text. Pour recevoir des champs d’événement supplémentaires, utilisez le paramètre fields dm_event.fields pour en sélectionner d’autres. Les autres champs d’événement disponibles incluent les suivants : dm_conversation_id, created_at, sender_id, attachments, participant_ids et referenced_tweets. Plusieurs de ces champs fournissent les identifiants d’autres objets X liés à l’événement de Direct Message :
  • sender_id - L’identifiant du compte qui a envoyé le message ou qui a invité un participant à une conversation de groupe
  • participant_ids - Un tableau d’identifiants de comptes. Pour les événements ParticipantsJoin et ParticipantsLeave, ce tableau contient un seul identifiant : celui du compte qui a créé l’événement
  • attachments - Fournit les identifiants de médias pour le contenu qui a été téléversé sur Twitter par l’expéditeur
  • referenced_tweets - Si une URL de Tweet est trouvée dans le champ text, l’identifiant de ce Tweet est inclus dans la réponse
Les expansions sender_id, participant_ids, referenced_tweets.id et attachments.media_keys sont disponibles pour étendre ces identifiants d’objets Twitter. Récupération d’un objet d’événement de Direct Message Exemple de requête Dans cet exemple, nous allons construire une requête qui récupère les événements associés à une conversation individuelle (un‑à‑un). Cette requête renverra les champs fondamentaux des événements de Direct Message, ainsi que des champs supplémentaires pour les Tweets référencés et leurs auteurs. Créons une requête qui demande :
  • Des attributs fondamentaux de l’événement, comme le moment de sa création et la conversation dont il fait partie (dm_conversation).
  • L’identifiant de compte et la description de l’expéditeur du Direct Message.
  • Le texte de tout Tweet référencé, et le moment où il a été publié.
  • L’identifiant de compte et la description de tout auteur de Tweet référencé.
Pour renvoyer ces attributs, la requête inclurait les éléments suivants : ?dm_event.fields=id,sender_id,text,created_at,dm_conversation_id&expansions=sender_id,referenced_tweets.id&tweet.fields=created_at,text,author_id&user.fields=description
Veillez à remplacer $BEARER_TOKEN par votre propre Jeton Bearer que vous avez généré. Exemple de réponse

Communauté

Les communautés sont des espaces dédiés où les utilisateurs de X peuvent se connecter, partager et se rapprocher des discussions qui les intéressent le plus. Les Publications dans les communautés peuvent être vues par toute personne sur X, mais seules les autres personnes au sein de la communauté elle-même peuvent interagir et participer à la discussion. L’objet Community contient les métadonnées pertinentes concernant une communauté. Récupération d’objets Community Exemple de requête Dans la requête suivante, nous demandons des champs spécifiques tout en recherchant une liste de communautés à partir d’un mot-clé fourni. Assurez-vous de remplacer $BEARER_TOKEN par votre propre Jeton Bearer.
Exemple de réponse

Comment utiliser les champs et les expansions

Par défaut, les objets de données de X API v2 incluent un petit nombre de champs par défaut lorsque vous effectuez une requête sans utiliser les paramètres fields ou expansions. Ce guide vous montrera comment utiliser les paramètres de requête fields et expansions dans votre requête pour recevoir des objets et des champs supplémentaires dans votre réponse. Dans ce guide, nous allons demander plusieurs champs présents dans la capture d’écran du Tweet suivante.   Cette image comprend une capture d’écran d’un Tweet publié par @X. Vous pouvez voir le texte du Tweet, le nom d’utilisateur, la date et l’heure de publication, la source et les métriques publiques. Elle comporte également une vidéo. Comme vous pouvez le voir sur la capture d’écran, plusieurs éléments d’information visibles sont liés au Tweet, notamment l’auteur du Tweet, les métriques du Tweet, l’horodatage de création, la vidéo et le nombre de vues de la vidéo. Il existe également plusieurs éléments de données qui ne sont pas visibles dans la capture d’écran, mais qui restent néanmoins disponibles sur demande via l’API.  Lorsque vous effectuez une requête vers l’API, la réponse par défaut est simple et ne contient que les champs de Tweet par défaut (id et text). Vous ne recevrez alors que l’objet principal renvoyé par l’endpoint que vous utilisez, et non les objets de données associés pouvant être liés à l’objet principal. Cette simplicité, associée aux paramètres de requête fields et expansions, vous permet de demander uniquement les champs dont vous avez besoin, en fonction de votre cas d’usage.   

Demande de champs et d’objets supplémentaires.

Tout d’abord, nous allons récupérer un objet Tweet en utilisant un ID de Tweet et le point de terminaison GET /tweets. Requête :
Réponse :
Le guide étape par étape suivant vous montrera comment récupérer les données supplémentaires visibles dans la capture d’écran.
  1. Identifiez les champs supplémentaires que vous souhaitez demander en vous appuyant sur notre modèle d’objet ou en consultant la liste des champs figurant dans les pages de Référence de l’API des points de terminaison. Dans ce cas, nous demanderons les champs supplémentaires suivants : attachments, author_id, created_at, public_metrics.
  2. Créez le paramètre de requête tweet.fields en utilisant les champs ci-dessus comme valeur, sous la forme d’une liste séparée par des virgules : ?tweet.fields=attachments,author_id,created_at,public_metrics
  3. Ajoutez le paramètre de requête à la requête GET /tweets que vous avez envoyée plus tôt.
Requête : curl --request GET --url 'https://api.x.com/2/tweets?ids=1260294888811347969&tweet.fields=attachments,author_id,created_at,public_metrics' \ --header 'Authorization: Bearer $BEARER_TOKEN' Réponse :
  1. Ensuite, nous allons demander des champs liés à la vidéo incluse dans le Tweet. Pour ce faire, nous utiliserons le paramètre expansions avec la valeur attachments.media_keys, que nous ajouterons à la requête.
?expansions=attachments.media_keys Requête :
Réponse, avec l’objet média représenté dans l’objet includes :
  1. Enfin, nous allons récupérer le nombre de vues et la durée de la vidéo. Ces champs ne sont pas retournés par défaut, il faut donc les demander explicitement. Utilisez le paramètre media.fields avec les valeurs séparées par des virgules public_metrics et duration_ms dans votre requête.
?media.fields=public_metrics,duration_ms Requête :   curl --request GET --url 'https://api.x.com/2/tweets?ids=1260294888811347969&tweet.fields=attachments,author_id,created_at,public_metrics&expansions=attachments.media_keys&media.fields=duration_ms,public_metrics' --header 'Authorization: Bearer $BEARER_TOKEN' La réponse, qui contient désormais l’ensemble des données visibles dans la capture d’écran du Tweet :
Au total, nous avons inclus les paramètres suivants dans cet exemple :
  • ids=1260294888811347969
  • tweet.fields=attachments,author_id,created_at,public_metrics
  • expansions=attachments.media_keys
  • media.fields=public_metrics,duration_ms  
Une fois assemblés, voici à quoi ressemble la chaîne de requête complète :

Exemples de payloads pour X API v2

Tweet

Tweet en réponse

Tweet étendu

Tweet avec média

Retweet d’un Tweet cité