Passer au contenu principal
Ce guide présente les principaux concepts nécessaires pour intégrer les endpoints Search Posts à votre application.

Authentification

La recherche récente prend en charge plusieurs méthodes d’authentification :
MéthodeCas d’usage
OAuth 2.0 App-OnlyDonnées de Publications publiques
OAuth 2.0 Authorization Code with PKCEMétriques privées
OAuth 1.0a User ContextMétriques privées
La recherche sur l’intégralité des archives ne prend en charge que l’authentification OAuth 2.0 App-Only.
Les métriques privées (non_public_metrics, organic_metrics, promoted_metrics) ne sont pas disponibles avec la recherche sur l’intégralité des archives, car elle ne prend en charge que l’authentification OAuth 2.0 App-Only.

Construire des requêtes

Les requêtes utilisent des opérateurs pour cibler des Publications. Combinez les opérateurs avec la logique booléenne :
(AI OR "machine learning") lang:en -is:retweet has:links

Limites de longueur des requêtes

Niveau d’accèsRecherche récenteRecherche dans l’archive complète
Libre-service512 caractères1 024 caractères
Entreprise4 096 caractères4 096 caractères

Types d’opérateurs

TypeDescriptionExemple
AutonomePeut être utilisé seul#python, from:user
Avec conjonction obligatoireDoit être utilisé avec un opérateur autonomehas:media, is:retweet

Construire une requête

Apprenez en détail la syntaxe des requêtes

Référence des opérateurs

Voir tous les opérateurs disponibles

Champs et expansions

Par défaut, la réponse inclut uniquement id, text et edit_history_tweet_ids. Utilisez des paramètres pour obtenir des données supplémentaires.

Exemple de requête

cURL
curl "https://api.x.com/2/tweets/search/recent?\
query=python&\
tweet.fields=created_at,public_metrics,author_id&\
expansions=author_id,attachments.media_keys&\
user.fields=username,verified&\
media.fields=url,type" \
  -H "Authorization: Bearer $BEARER_TOKEN"

Expansions disponibles

ExpansionRésultat
author_idObjet utilisateur de l’auteur
attachments.media_keysObjets média associés
attachments.poll_idsObjets de sondage associés
referenced_tweets.idPublications citées ou en réponse
geo.place_idObjets lieu
entities.mentions.usernameObjets utilisateur mentionnés

Guide des champs et des expansions

Pour en savoir plus sur la personnalisation des réponses

Les endpoints de recherche renvoient les résultats paginés. Utilisez le next_token de la réponse pour récupérer des pages de résultats supplémentaires.

Fonctionnement

  1. Effectuez votre requête initiale avec max_results
  2. Vérifiez la présence de next_token dans l’objet meta
  3. Incluez next_token dans les requêtes suivantes
  4. Répétez jusqu’à ce qu’aucun next_token ne soit renvoyé

Exemple

cURL
# Première requête
curl "https://api.x.com/2/tweets/search/recent?query=python&max_results=100" \
  -H "Authorization: Bearer $BEARER_TOKEN"

# Requête suivante avec un jeton de pagination
curl "https://api.x.com/2/tweets/search/recent?query=python&max_results=100&next_token=NEXT_TOKEN" \
  -H "Authorization: Bearer $BEARER_TOKEN"

Guide de pagination

En savoir plus sur la pagination

Modifications des Publications

Les Publications peuvent être modifiées jusqu’à 5 fois dans un délai de 30 minutes. Les endpoints de recherche retournent toujours la version la plus récente.

Considérations

  • edit_history_tweet_ids contient tous les identifiants de Publications (de la plus ancienne à la plus récente)
  • Les Publications récupérées après la fenêtre de 30 minutes représentent la version finale
  • Pour les cas d’usage presque en temps réel, les Publications récemment publiées peuvent encore être modifiées

Fondamentaux de l'édition de Publications

En savoir plus sur l’édition des Publications

Bonnes pratiques

Commencez de manière ciblée

Utilisez plusieurs opérateurs pour affiner les résultats et réduire le bruit.

Testez de manière itérative

Commencez avec un périmètre large, puis affinez en fonction des résultats.

Gérez la pagination

Implémentez une pagination adaptée pour les grands ensembles de résultats.

Mettez les résultats en cache

Stockez les résultats localement pour éviter les requêtes répétées.

Étapes suivantes

Créer une requête

Maîtriser la syntaxe des requêtes

Référence des opérateurs

Tous les opérateurs disponibles

Pagination

Gérer de grands volumes de résultats

Référence de l’API

Documentation complète de l’endpoint