Veuillez noter : Nous avons publié une nouvelle version de la recherche de Publications et du décompte des Publications dans X API v2. Nous vous encourageons à découvrir les nouveautés de X API v2. Ces endpoints ont été mis à jour pour inclure les métadonnées de modification des Publications. Pour en savoir plus sur ces métadonnées, consultez la page de principes fondamentaux “Modifier des Publications”.
Overview
Enterprise
Les API Enterprise sont disponibles uniquement dans le cadre de nos niveaux d’accès gérés. Pour utiliser ces API, vous devez d’abord créer un compte avec notre équipe commerciale Enterprise. Pour en savoir plus, consultez ICI.
Vous pouvez consulter l’ensemble des offres de recherche de Publications de X API ICI.
Il existe deux API de recherche Enterprise :
- L’API 30-Day Search fournit des données des 30 derniers jours.
- L’API Full-Archive Search fournit un accès complet et instantané à l’intégralité du corpus de données X, remontant jusqu’à la première Publication en mars 2006.
Types de requêtes
Requêtes de recherche (données)
Requêtes de comptage (nombre de Publications)
Opérateurs disponibles
Disponibilité des données / dates importantes
- Première Publication : 21/03/2006
- Premiers retweets natifs : 06/11/2009
- Première Publication géolocalisée : 19/11/2009
- Première indexation d’URL pour le filtrage : 27/08/2011
- Métadonnées améliorées d’expansion d’URL (titres et descriptions de sites web) : 01/12/2014
- Métadonnées d’enrichissement Profile Geo et filtrage : 17/02/2015
Mises à jour des données et mutabilité
- Métadonnées de l’objet utilisateur :
- @handle de l’utilisateur (l’id numérique ne change jamais)
- Description de la biographie
- Compteurs : statuts, abonnés, abonnements, favoris, listes
- Localisation du profil
- Autres détails tels que le fuseau horaire et la langue
- Statistiques de la Publication – c’est‑à‑dire tout ce qui peut être modifié sur la plateforme par des actions d’utilisateurs (exemples ci‑dessous) :
- Nombre de favoris
- Nombre de Retweets
Requêtes mono‑thread vs multi‑thread
maxResults de 500) pour recevoir toutes les données. En supposant qu’il faille deux secondes par réponse, cela représente 4 000 secondes (un peu plus d’une heure) pour extraire toutes ces données de manière séquentielle via un seul thread (1 requête par seconde en utilisant le jeton « next » de la réponse précédente). Pas mal !
Considérons maintenant la situation où douze threads parallèles sont utilisés pour recevoir les données. En supposant une répartition homogène du million de Publications sur la période d’un an, vous pouvez répartir les requêtes entre douze threads parallèles (multi‑thread) et utiliser davantage de la limite de débit par seconde pour une seule « tâche ». En d’autres termes, vous pourriez exécuter un thread par mois qui vous intéresse et, ce faisant, les données pourraient être récupérées 12 fois plus vite (soit ~6 minutes).
Cet exemple multi‑thread s’applique tout aussi bien à l’endpoint counts. Par exemple, si vous souhaitez recevoir les comptages de Publications sur une période de deux ans, vous pouvez effectuer une requête mono‑thread et remonter dans les comptages par tranches de 31 jours. En supposant qu’il faille 2 secondes par réponse, il faudrait environ 48 secondes pour effectuer les 24 requêtes d’API et récupérer l’ensemble des comptages. Cependant, vous avez aussi la possibilité d’effectuer plusieurs requêtes d’un mois en parallèle. En effectuant 12 requêtes par seconde, l’ensemble des comptages pourrait être récupéré en environ 2 secondes.
Logique de nouvelle tentative
- Réessayez la requête après avoir réduit l’intervalle de temps qu’elle couvre. Répétez cette opération en réduisant progressivement jusqu’à une fenêtre de 6 heures si nécessaire.
- Si vous reliez un grand nombre de termes avec l’opérateur OR, divisez-les en règles distinctes et réessayez chacune individuellement.
- Si vous utilisez un grand nombre d’exclusions dans votre règle, réduisez le nombre de termes exclus dans la règle, puis réessayez.
Démarrage rapide
Prise en main de l’API Enterprise Search Posts : 30-Day
- [Un compte Enterprise]https://developer.x.com/en/products/x-api/enterprise
- Votre nom d’utilisateur, mot de passe et nom de compte
- Le label associé à votre endpoint de recherche, tel qu’affiché sur console.gnip.com
Accéder à l’endpoint de données
from: et lang: pour trouver des Publications provenant de @XDevelopers en anglais. Pour plus d’opérateurs cliquez ici.
- cURL
- Exemple cURL
-
Nom d’utilisateur
<USERNAME>par exempleemail@domain.com -
Nom de compte
<ACCOUNT-NAME>par exemplejohn-doe -
Label
<LABEL>par exempleprod -
fromDate et toDate par exemple
"fromDate":"201811010000", "toDate":"201811122359"
Corps de la réponse de l’endpoint de données
Le corps de la réponse renvoyée par votre requête d’API sera au format JSON, comme illustré ci-dessous.Accéder à l’endpoint counts
counts, nous allons récupérer le nombre de Publications provenant du compte @XDevelopers en anglais, regroupé par day.
- cURL
- Exemple cURL
-
Username
<USERNAME>par exempleemail@domain.com -
Account name
<ACCOUNT-NAME>par exemplejohn-doe -
Label
<LABEL>par exempleprod -
fromDate et toDate par exemple
"fromDate":"201811010000", "toDate":"201811122359"
Charge utile de la réponse de l’endpoint Counts
Articles de référence
Premiers pas avec l’API Enterprise Search Posts : Full-Archive
- [Un compte Enterprise]https://developer.x.com/en/products/x-api/enterprise
- Votre nom d’utilisateur, votre mot de passe et le nom de votre compte
- Le libellé associé à votre point de terminaison de recherche, tel qu’affiché sur console.gnip.com
Accéder au endpoint de données
Le endpoint de données nous fournira le payload complet des Publications correspondantes. Nous utiliserons les opérateursfrom: et lang: pour trouver les Publications provenant de @XDevelopers en anglais. Pour plus d’opérateurs, cliquez ici.
- cURL
- Exemple cURL
-
Nom d’utilisateur
<USERNAME>par ex.email@domain.com -
Nom du compte
<ACCOUNT-NAME>par ex.john-doe -
Label
<LABEL>par ex.prod -
fromDate et toDate par ex.
"fromDate":"201802010000", "toDate":"201802282359"
Corps de la réponse de l’endpoint de données
Accéder à l’endpoint counts
Avec l’endpoint counts, nous allons récupérer le nombre de Publications provenant du compte @XDevelopers en anglais, regroupées parday.
- cURL
- Exemple de cURL
-
Username
<USERNAME>par exemple :email@domain.com -
Account name
<ACCOUNT-NAME>par exemple :john-doe -
Label
<LABEL>par exemple :prod -
fromDate et toDate par exemple :
"fromDate":"201802010000", "toDate":"201802282359"
Corps de la réponse de l’endpoint Counts
Le corps de la réponse renvoyée par votre requête API sera au format JSON, comme illustré ci‑dessous.Articles de référence
Guides
Créer des requêtes de recherche
Opérateurs Enterprise
- API de recherche Enterprise sur les 30 derniers jours
- API de recherche Enterprise sur l’archive complète
Présentation du produit
Chronologie des métadonnées
to: et in_reply_to_status_id:.
Les détails fournis ici ont été générés à l’aide de Full-Archive Search (résultant de centaines de recherches). Cette chronologie n’est ni complète ni parfaitement précise à 100 %. Si vous identifiez une autre « date de naissance» de filtrage/métadonnées fondamentale pour votre cas d’usage, veuillez nous en informer.
Notez que l’index de recherche sous-jacent peut être reconstruit. En conséquence, ces détails de chronologie sont susceptibles d’évoluer.
2006
- 26 mars -
lang:. Un exemple de métadonnées de Publication renseignées rétroactivement lors de la génération de l’index de recherche. - 13 juillet -
has:mentionscommence à être pris en compte. - 6 octobre -
has:symbols. Les slang). - 26 octobre -
has:linkscommence à être pris en compte. - 23 novembre -
has:hashtagscommence à être pris en compte.
2007
- 30 janvier - Première @reply de « première classe » (in_reply_to_user_id),
reply_to_status_id:commence à être mis en correspondance. - 23 août - Les hashtags apparaissent comme une convention courante pour organiser les sujets et les conversations. Première utilisation concrète une semaine plus tard.
2009
- 15 mai -
is:retweet. Notez que cet opérateur commence à faire correspondre des résultats avec la version « bêta » des Retweets officiels et son modèle « Via @ ». Pendant cette période bêta, le verbe associé à la Publication est « post » et la Publication originale n’est pas incluse dans la charge utile. - 13 août - La version finale des Retweets officiels est publiée avec le modèle « RT @ », le verbe étant « share », et l’attribut « retweet_status » contenant la Publication originale (ce qui double approximativement la taille de la charge utile JSON).
2010
- 6 mars - Les opérateurs géographiques
has:geo,bounding_box:etpoint_radius:commencent à renvoyer des résultats. - 28 août -
has:videos(Jusqu’en février 2015, cet opérateur renvoie les Publications contenant des liens vers certaines plateformes d’hébergement vidéo, comme youtube.com, vimeo.com et vivo.com).
2011
- 20 juillet -
has:mediaethas:imagescommencent à être pris en compte. Les photos natives sont officiellement annoncées le 9 août 2010.
2014
- 3 décembre - (environ) certaines métadonnées d’URL enrichies avec balises HTML
titleetdescriptioncommencent à apparaître dans les payloads. Les métadonnées enrichies ont été pleinement déployées en mai 2016.
2015
- 10 février -
has:videoscorrespond aux vidéos natives sur X. - 17 février -
has:profile_geo,profile_country:,profile_region:,profile_locality:les opérateurs Profile Geo commencent à produire des correspondances. - 17 février -
place_country:etplace:les opérateurs de géolocalisation des Publications commencent à produire des correspondances.
2016
- 1er mai - Les métadonnées d’URL améliorées sont devenues plus largement accessibles et ont été officiellement annoncées dans le cadre du lancement de Gnip 2.0 en août 2016. Aucun opérateur associé pour ces métadonnées dans les API de recherche.
2017
- 22 février - Les métadonnées des sondages deviennent disponibles au format natif enrichi. Aucun opérateur associé pour ces métadonnées.
2022
- 27 septembre - Tous les objets Publication créés à partir de cette date disposent de métadonnées d’édition de Publication. Tous les endpoints Enterprise qui fournissent des objets Publication ont été mis à jour pour fournir ces métadonnées à compter de cette date. Les métadonnées d’édition fournies incluent les objets
edit_historyetedit_controls. Ces métadonnées ne seront pas renvoyées pour les Publications créées avant le 27 septembre 2022. Actuellement, il n’existe aucun opérateur Enterprise disponible correspondant à ces métadonnées. Pour en savoir plus sur les métadonnées d’édition de Publication, consultez la page Principes de base de l’édition de Publications.
2022
- 29 septembre - Tous les objets de type Publication créés depuis cette date disposent de métadonnées de Publication modifiée. Tous les endpoints Enterprise qui renvoient des objets Publication ont été mis à jour pour fournir ces métadonnées à partir de cette date. Les métadonnées d’édition fournies incluent les objets
edit_historyetedit_controls. Ces métadonnées ne seront pas renvoyées pour les Publications créées avant le 27 septembre 2022. Actuellement, il n’existe aucun Operators Enterprise disponible correspondant à ces métadonnées. Pour en savoir plus sur les métadonnées de Publication modifiée, consultez la page Edit Posts fundamentals.
Conseils de filtrage
- Certaines métadonnées ont des dates d’« apparition » (born-on), de sorte que les filtres peuvent produire des faux négatifs. Ces recherches incluent des opérateurs qui dépendent de métadonnées qui n’existaient pas pendant tout ou partie de la période de recherche. Par exemple, si vous recherchez des Publications avec l’opérateur
has:images, vous n’obtiendrez aucune correspondance pour les périodes antérieures à juillet 2011. Cela vient du fait que cet opérateur ne correspond qu’aux photos natives (jointes à une Publication via l’interface utilisateur X). Pour un ensemble de données plus complet de Publications comportant un partage de photos, les filtres pour la période précédant juillet 2011 doivent contenir des clauses de règle qui correspondent aux URL courantes d’hébergement de photos. - Certaines métadonnées ont été complétées a posteriori avec des métadonnées issues d’une période postérieure à la publication sur X.
- Profils X
- Publications originales ou partagées
- Classification linguistique des Publications
- Géoréférencement des Publications
- Médias des liens partagés
Profils X
Publications originales et Retweets
_is:retweet_ permet aux utilisateurs d’inclure ou d’exclure les Retweets. Les utilisateurs de cet opérateur doivent adopter deux stratégies pour identifier (ou non) les Retweets dans les données antérieures à août 2009. Avant août 2009, le contenu de la Publication doit lui‑même être vérifié, à l’aide d’une recherche d’expression exacte, pour repérer le motif « @RT » (en fait, si vous filtrez les Retweets datant de la période mai‑août 2009, le motif « Via @ » doit être inclus). Pour les périodes postérieures à août 2009, l’opérateur is:retweet est disponible.
Classification linguistique des Publications
Géoréférencer des Publications
- Références géographiques dans le message de la Publication. La mise en correspondance sur la base de références géographiques présentes dans le message de la Publication, bien que souvent la méthode la plus difficile puisqu’elle dépend de connaissances locales, est une option pour l’ensemble de l’archive des Publications. Voici un exemple de correspondance géoréférencée de 2006 pour la région de San Francisco, basé sur un filtre « golden gate ».
-
Publications géolocalisées par l’utilisateur. Avec les API de recherche, la possibilité de commencer à mettre en correspondance des Publications à l’aide de certains Geo Operators a débuté en mars 2010, et avec d’autres en février 2015 :
- 6 mars 2010 :
has:geo,bounding_box:etpoint_radius: - 17 février 2015 :
place_country:etplace:
- 6 mars 2010 :
-
Emplacement « domicile » du profil de compte défini par l’utilisateur. Les Profile Geo Operators sont disponibles à la fois dans Historical PowerTrack et dans les API de recherche. Avec les API de recherche, ces métadonnées Profile Geo sont disponibles à partir de février 2015. Pour les Publications publiées avant que les métadonnées Profile Geo ne deviennent disponibles, l’opérateur
bio_location:est disponible et peut être utilisé pour faire correspondre des saisies d’utilisateurs non normalisées.
- 26 octobre 2006 -
has:links - 20 juillet 2011 -
has:imagesethas:media - août 2011 -
url:avec l’enrichissement des URL étendues Dès septembre 2006,(url:"spotify.com" OR url:gnip OR url:microsoft OR url:google OR url:youtube)correspond à http://x.com/Adam/statuses/16602, même s’il n’y a aucune métadonnée urls[] dans twitter_entities et les objets gnip. « youtube.com » est un exemple de contenu de message qui, sans aucune métadonnée urls[], correspond à url:youtube. - 10 février 2015 -
has:videospour les vidéos natives. Entre le 28/08/2010 et le 10/02/2015, cet opérateur correspond aux Publications contenant des liens vers certains sites d’hébergement vidéo tels que youtube.com, vimeo.com et vivo.com. - 1er mai 2016 -
url_title:eturl_description:, basés sur l’enrichissement des URL améliorées, généralement disponibles. Les premières métadonnées d’URL améliorées ont commencé à apparaître en décembre 2014.
Foire aux questions (FAQ)
Questions générales sur l’API de recherche de publications
Le nombre de Publications que je reçois via l'endpoint de données ne correspond pas au nombre de Publications indiqué par l'endpoint de comptage. Pourquoi est-ce le cas ?
Le nombre de Publications que je reçois via l'endpoint de données ne correspond pas au nombre de Publications indiqué par l'endpoint de comptage. Pourquoi est-ce le cas ?
Je n’ai reçu aucune Publication correspondant à ma requête. Pourquoi ?
Je n’ai reçu aucune Publication correspondant à ma requête. Pourquoi ?
- la Publication que vous vous attendiez à voir provient d’un compte protégé.
- le endpoint de données prend en compte tous les événements de conformité (ce qui signifie que les Publications supprimées, les zones géographiques nettoyées, etc. ne seront pas incluses dans la réponse).
Ma requête a renvoyé une Publication, mais elle inclut un mot-clé que j’ai exclu. Pourquoi cela se produit-il ?
Ma requête a renvoyé une Publication, mais elle inclut un mot-clé que j’ai exclu. Pourquoi cela se produit-il ?
Existe-t-il des bibliothèques clientes que je peux utiliser pour débuter avec les API Search Post ?
Existe-t-il des bibliothèques clientes que je peux utiliser pour débuter avec les API Search Post ?
- Tweepy - idéal pour utiliser le produit standard de recherche de Publications (Python)
- X API - idéal pour utiliser les API Search Post standard (Python)
- Search Posts Python et Search Posts Ruby - deux bons outils que vous pouvez utiliser avec les API Search Post Enterprise (et v2 !)
Est‑il possible que je reçoive un nombre de Publications inférieur à la valeur que j’ai définie comme `maxResults` dans ma requête vers l’endpoint de données ?
Est‑il possible que je reçoive un nombre de Publications inférieur à la valeur que j’ai définie comme `maxResults` dans ma requête vers l’endpoint de données ?
maxResults spécifiée ou après 30 jours.Par exemple, si vous avez 800 Publications au cours d’une période donnée de 30 jours, vous devrez effectuer deux requêtes pour récupérer l’ensemble des résultats, car le nombre maximal de Publications pouvant être renvoyées par requête est de 500 (maxResults). Et si vous avez seulement 400 Publications le premier mois, puis 100 Publications le deuxième mois, vous devrez également utiliser deux requêtes pour récupérer tous les résultats, car la pagination intervient après une période de 30 jours, même si la première requête renvoie moins de Publications que la valeur maxResults spécifiée.Dans quel ordre les Publications correspondantes sont-elles renvoyées ?
Dans quel ordre les Publications correspondantes sont-elles renvoyées ?
fromDate demandée initialement.En quoi les Publications modifiées ont-elles une incidence sur mon utilisation et ma facturation ?
En quoi les Publications modifiées ont-elles une incidence sur mon utilisation et ma facturation ?
EnterpriseJe souhaite en savoir plus sur la tarification de l’API Enterprise Search Post et sur la manière de déposer une demande pour en bénéficier. Comment puis-je procéder ?
Je souhaite en savoir plus sur la tarification de l’API Enterprise Search Post et sur la manière de déposer une demande pour en bénéficier. Comment puis-je procéder ?
Comment créer un ensemble de règles adapté à mon cas d’utilisation ?
Comment créer un ensemble de règles adapté à mon cas d’utilisation ?
J’ai dépassé mon quota de requêtes pour ce mois-ci, mais j’ai besoin d’accéder à plus de données — que puis-je faire ?
J’ai dépassé mon quota de requêtes pour ce mois-ci, mais j’ai besoin d’accéder à plus de données — que puis-je faire ?
Guide de dépannage des erreurs
- Assurez-vous d’utiliser les paramètres appropriés pour chaque endpoint (par exemple, le champ
bucketsne peut être utilisé qu’avec l’endpoint de comptage, pas avec l’endpoint de données). - Vérifiez que les champs
:product,:account_nameet:labelsont corrects. Vous trouverez votre champ:labeldans la console GNIP (clients entreprise uniquement).
Référence de l’API
API de recherche Enterprise
- 30-Day Search API - fournit les Tweets publiés au cours des 30 derniers jours.
- Full-Archive Search API - fournit les Tweets remontant jusqu’à 2006, en commençant par le premier Tweet publié en mars 2006.
- Méthodes pour récupérer les données de Tweets et les décomptes
- Authentification
- Pagination
- Paramètres de requête API et exemples de requêtes
- Corps JSON des réponses API et exemples de réponses
- Codes de réponse HTTP
Méthodes
https://gnip-api.x.com/search/.
:productindique l’endpoint de recherche auquel vous envoyez des requêtes, soit30day, soitfullarchive.:account_nameest le nom (sensible à la casse) associé à votre compte, tel qu’affiché sur console.gnip.com.:labelest le libellé (sensible à la casse) associé à votre endpoint de recherche, tel qu’affiché sur console.gnip.com.
- Endpoint de données : https://gnip-api.x.com/search/30day/accounts/TwitterDev/prod.json
- Endpoint de décompte : https://gnip-api.x.com/search/30day/accounts/TwitterDev/prod/counts.json
:product, :account_name et :label. Pour utiliser ces exemples, veillez à mettre à jour les URL avec vos propres informations.
Authentification
Comportement des requêtes/réponses
fromDate et toDate, vous pouvez demander n’importe quelle période prise en charge par l’API. L’API de recherche sur 30 jours fournit des Tweets provenant des 31 derniers jours (même si elle est appelée API « 30-Day », elle met 31 jours à disposition pour permettre aux utilisateurs d’effectuer des requêtes couvrant des mois complets). L’API de recherche Full-Archive fournit des Tweets remontant jusqu’au tout premier Tweet (21 mars 2006). Cependant, une seule réponse sera limitée à la plus petite valeur entre votre paramètre maxResults et 31 jours. Si les données correspondant à votre requête ou votre plage temporelle dépassent la valeur maxResults que vous avez spécifiée ou 31 jours, vous recevrez un jeton next que vous devrez utiliser pour paginer le reste de la plage temporelle que vous avez spécifiée.
Par exemple, imaginons que vous utilisiez la recherche Full-Archive et que vous souhaitiez tous les Tweets correspondant à votre requête entre le 1er janvier 2017 et le 30 juin 2017. Vous indiquerez cette période complète de six mois dans votre requête en utilisant les paramètres fromDate et toDate. L’API de recherche répondra avec la première « page » de Tweets, avec un nombre de Tweets correspondant à votre paramètre maxResults (dont la valeur par défaut est 100). En supposant qu’il y ait davantage de Tweets (et il y en aura très probablement plus), l’API fournira également un jeton next qui vous permettra d’effectuer une requête pour la « page » suivante de données. Ce processus est répété jusqu’à ce que l’API ne renvoie plus de jeton next. Consultez la section suivante pour plus de détails.
Pagination
Pagination des données
maxResults a pour valeur par défaut 100 et peut être défini dans une plage de 10 à 500. Si votre requête renvoie plus de Tweets que la valeur du paramètre ‘maxResults’ utilisée dans la requête, la réponse inclura un jeton ‘next’ (en tant qu’attribut JSON au niveau racine). Ce jeton ‘next’ est utilisé dans la requête suivante pour récupérer la portion suivante des Tweets correspondants pour cette requête (c.-à-d. la ‘page’ suivante). Des jetons ‘next’ continueront d’être fournis jusqu’à ce que vous ayez atteint la dernière ‘page’ de résultats pour cette requête, moment auquel aucun jeton ‘next’ n’est fourni.
Pour demander la ‘page’ suivante de données, vous devez effectuer exactement la même requête que l’originale, y compris les paramètres query, toDate et fromDate, s’ils sont utilisés, et inclure également un paramètre de requête ‘next’ défini sur la valeur de la réponse précédente. Vous pouvez faire cela avec une requête GET ou POST. Toutefois, le paramètre ‘next’ doit être encodé dans l’URL dans le cas d’une requête GET.
Vous pouvez continuer à transmettre l’élément ‘next’ de votre requête précédente jusqu’à ce que vous ayez reçu tous les Tweets de la période couverte par votre requête. Lorsque vous recevez une réponse qui n’inclut pas d’élément ‘next’, cela signifie que vous avez atteint la dernière page et qu’aucune donnée supplémentaire n’est disponible pour la requête et la plage temporelle spécifiées.
Pagination des counts
counts fournit les volumes de Tweets associés à une requête, sur une base quotidienne, horaire ou par minute. L’endpoint d’API counts renverra un tableau horodaté de dénombrements couvrant au maximum 31 jours. Si vous demandez plus de 31 jours de dénombrements, un jeton next vous sera fourni. Comme pour les jetons next de données, vous devez effectuer exactement la même requête que l’originale et inclure également un paramètre de requête next défini sur la valeur renvoyée dans la réponse précédente.
Au-delà d’une demande portant sur plus de 31 jours de dénombrements, il existe un autre cas où un jeton next est fourni. Pour les requêtes à volume élevé, il est possible que la génération des dénombrements prenne suffisamment de temps pour déclencher un dépassement de délai de réponse. Lorsque cela se produit, vous recevrez moins de 31 jours de dénombrements, mais un jeton next vous sera fourni afin de continuer à effectuer des requêtes pour obtenir l’intégralité du jeu de dénombrements. Important : les dépassements de délai ne renvoient que des « buckets » complets : ainsi, 2,5 jours se traduiraient par 2 « buckets » de journées complètes.
Notes supplémentaires
- Lorsque vous utilisez les paramètres fromDate ou toDate dans une requête de recherche, vous n’obtenez que des résultats compris dans votre plage temporelle. Lorsque vous atteignez le dernier groupe de résultats de votre plage temporelle, vous ne recevrez plus de jeton ‘next’.
- L’élément ‘next’ peut être utilisé avec n’importe quelle valeur de maxResults entre 10 et 500 (avec une valeur par défaut de 100). maxResults détermine combien de Tweets sont renvoyés dans chaque réponse, mais ne vous empêche pas d’obtenir finalement l’ensemble des résultats.
- L’élément ‘next’ n’expire pas. Plusieurs requêtes utilisant la même valeur ‘next’ recevront les mêmes résultats, quel que soit le moment où la requête est effectuée.
- Lorsque vous parcourez les résultats à l’aide du paramètre ‘next’, vous pouvez rencontrer des doublons aux limites de la requête. Votre application doit être capable de les gérer.
Point de terminaison des données
POST /search/:product/:label
Modèle de point de terminaison :
Paramètres de requête de données
Détails supplémentaires
Exemples de requêtes de données et de réponses
Exemple de requête POST
- Les paramètres de requête dans une requête POST sont envoyés dans le corps de la requête, au format JSON, comme illustré ci-dessous.
- Toutes les parties de la règle PowerTrack faisant l’objet de la requête (par exemple des mots-clés, d’autres opérateurs comme bounding_box:) doivent être placées dans le paramètre ‘query’.
- Ne décomposez pas la règle en plusieurs paramètres distincts dans l’URL de requête.
Exemple de requête GET
- Les paramètres d’une requête GET sont encodés dans l’URL, au moyen de l’encodage standard des URL.
- Toutes les parties de la règle PowerTrack faisant l’objet de la requête (par exemple, les mots-clés, d’autres opérateurs comme bounding_box:) doivent être placées dans le paramètre ‘query’.
- Ne séparez pas des parties de la règle en paramètres distincts dans l’URL de requête.
Exemple de réponses de données
maxResults, de sorte qu’un jeton ‘next’ est fourni pour les requêtes suivantes. Si maxResults ou un nombre inférieur de Tweets sont associés à votre requête, aucun jeton ‘next’ ne sera inclus dans la réponse.
La valeur de l’élément ‘next’ changera à chaque requête et doit être traitée comme une chaîne opaque. L’élément ‘next’ apparaîtra comme suit dans le corps de la réponse :
Point de terminaison de décompte
/search/:stream/counts
Modèle d’endpoint :
/search/fullarchive/accounts/:account_name/:label/counts.json
Cet endpoint renvoie des données de comptage (volumes de données) pour la requête spécifiée. Si aucune période n’est indiquée, la plage temporelle par défaut est les 30 derniers jours. Les volumes de données sont renvoyés sous forme de tableau horodaté, soit par jour, par heure (par défaut) ou par minute.
Remarque : Cette fonctionnalité peut également être réalisée à l’aide d’une requête GET, au lieu d’une requête POST, en encodant dans l’URL les paramètres décrits ci‑dessous.
Paramètres de requête Counts
Détails supplémentaires
Exemples de requêtes et de réponses pour l’endpoint counts
Exemple de requête POST
- Les paramètres de requête dans une requête POST sont envoyés via un corps de requête au format JSON, comme illustré ci‑dessous.
- Toutes les parties de la règle PowerTrack que vous interrogez (par exemple, mots‑clés, autres opérateurs comme bounding_box:) doivent être placées dans le paramètre ‘query’.
- Ne découpez pas la règle en plusieurs paramètres distincts dans l’URL de requête.
Exemple de requête GET
- Les paramètres de requête dans une requête GET sont encodés dans l’URL à l’aide de l’encodage d’URL standard
- Toutes les parties de la règle PowerTrack faisant l’objet de la requête (par exemple des mots-clés, ou d’autres opérateurs comme bounding_box:) doivent être placées dans le paramètre ‘query’
- Ne séparez pas des parties de la règle pour en faire des paramètres distincts dans l’URL de requête
datasont disponibles icicountssont disponibles ici