Passer au contenu principal

Bien démarrer avec l’endpoint de comptage de Posts sur l’intégralité des archives    

Ce guide de démarrage rapide vous aidera à effectuer votre première requête vers l’endpoint de comptage de Posts sur l’intégralité des archives à l’aide de Postman, un outil graphique permettant d’effectuer des requêtes HTTP. Si vous souhaitez consulter des exemples de code dans différents langages de programmation, rendez-vous sur notre dépôt GitHub X API v2 sample code

Prérequis

L’endpoint de comptage de Posts sur l’intégralité des archives est actuellement disponible uniquement pour les personnes disposant d’un accès Pro ou Enterprise. Pour utiliser cet endpoint, vous devez demander un accès Pro ou EnterpriseEn plus de l’approbation d’accès, vous aurez besoin d’un ensemble de clés et jetons pour authentifier votre requête. Vous pouvez générer ces clés et jetons en suivant les étapes ci-dessous :
  • Accédez à votre Project avec accès Enterprise dans le developer portal et assurez-vous d’avoir une App développeur associée à ce Project.
  • Accédez à la page « Keys and tokens » de votre App pour générer les informations d’identification requises. Veillez à conserver toutes les informations d’identification dans un emplacement sécurisé.

Étapes pour construire une requête de comptage de Posts sur l’archive complète

Première étape : commencer avec un outil ou une bibliothèque Il existe plusieurs outils, exemples de code et bibliothèques que vous pouvez utiliser pour effectuer une requête vers cet endpoint, mais nous allons utiliser l’outil Postman ici pour simplifier le processus. Pour charger la collection X API v2 dans votre environnement Postman, veuillez cliquer sur le bouton suivant : Une fois la collection X API v2 chargée dans Postman, accédez à Post counts > Full-archive Post counts. Deuxième étape : authentifier votre requête Pour effectuer correctement une requête vers la X API, vous devez vérifier que vous disposez des autorisations nécessaires. Pour ce faire avec cet endpoint, vous devez authentifier votre requête avec les méthodes d’authentification OAuth 2.0 App-Only. Vous devez ajouter vos clés et jetons, en particulier l’App Access Token (également appelé App-only Bearer Token), dans Postman. Pour cela, sélectionnez l’environnement nommé « X API v2 » dans le coin supérieur droit de Postman, puis ajoutez vos clés et jetons dans les champs « initial value » et « current value » (en cliquant sur l’icône en forme d’œil à côté de la liste déroulante des environnements). Cette variable sera automatiquement injectée dans l’onglet Authorization de la requête si vous avez effectué cette opération correctement.   Troisième étape : créer une query Chaque requête de comptage de Posts sur l’archive complète exige une seule query. Pour cet exemple, nous allons utiliser une query qui correspond aux Posts publiés par le compte @XDevelopers. Pour cette query, nous utilisons l’opérateur from et le définissons sur XDevelopers (insensible à la casse) : from:XDevelopers Dans Postman, accédez à l’onglet « Params » et saisissez cet ID, ou une chaîne d’ID de Post séparés par une virgule, dans la colonne « Value » du paramètre ids.  
KeyValueDescription
queryfrom:XDevelopersQuery à soumettre à l’endpoint de comptage de Posts sur l’archive complète
Quatrième étape (optionnelle) : spécifier la granularité et la période Si vous cliquez sur le bouton « Send » après la troisième étape, vous obtiendrez le comptage par défaut de l’archive complète des Posts : par heure pour les 30 derniers jours. Si vous souhaitez obtenir le comptage de l’archive complète des Posts par jour, vous devrez ajouter le paramètre granularity avec la valeur day. Si vous souhaitez des comptages de Posts au-delà de 30 jours, vous devrez spécifier les paramètres start_time et end_time avec les valeurs souhaitées.  Dans Postman, accédez à l’onglet « Params » et ajoutez la paire clé:valeur suivante au tableau « Query Params » :
KeyValueDescription
granularitydayLa granularité des résultats de comptage de Posts. Valeurs possibles : day, hour ou minute
start_time2021-05-01T00:00:00ZL’horodatage UTC le plus ancien à partir duquel les Posts seront renvoyés
end_time2021-06-01T00:00:00ZL’horodatage UTC le plus récent jusqu’auquel les Posts seront renvoyés.
Vous devriez maintenant voir l’URL suivante à côté du bouton « Send » : https://api.x.com/2/tweets/counts/all?query=from%3AXDevelopers&start_time=2021-05-01T00:00:00Z&end_time=2021-06-01T00:00:00Z&granularity=day Cinquième étape : envoyer votre requête et examiner votre réponse Une fois que tout est configuré, cliquez sur le bouton « Send » et vous recevrez une réponse similaire à la suivante :
{
   "data": [
       {
           "end": "2021-05-02T00:00:00.000Z",
           "start": "2021-05-01T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-03T00:00:00.000Z",
           "start": "2021-05-02T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-04T00:00:00.000Z",
           "start": "2021-05-03T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-05T00:00:00.000Z",
           "start": "2021-05-04T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-06T00:00:00.000Z",
           "start": "2021-05-05T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-07T00:00:00.000Z",
           "start": "2021-05-06T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-08T00:00:00.000Z",
           "start": "2021-05-07T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-09T00:00:00.000Z",
           "start": "2021-05-08T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-10T00:00:00.000Z",
           "start": "2021-05-09T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-11T00:00:00.000Z",
           "start": "2021-05-10T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-12T00:00:00.000Z",
           "start": "2021-05-11T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-13T00:00:00.000Z",
           "start": "2021-05-12T00:00:00.000Z",
           "tweet_count": 6
       },
       {
           "end": "2021-05-14T00:00:00.000Z",
           "start": "2021-05-13T00:00:00.000Z",
           "tweet_count": 1
       },
       {
           "end": "2021-05-15T00:00:00.000Z",
           "start": "2021-05-14T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-16T00:00:00.000Z",
           "start": "2021-05-15T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-17T00:00:00.000Z",
           "start": "2021-05-16T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-18T00:00:00.000Z",
           "start": "2021-05-17T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-19T00:00:00.000Z",
           "start": "2021-05-18T00:00:00.000Z",
           "tweet_count": 1
       },
       {
           "end": "2021-05-20T00:00:00.000Z",
           "start": "2021-05-19T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-21T00:00:00.000Z",
           "start": "2021-05-20T00:00:00.000Z",
           "tweet_count": 8
       },
       {
           "end": "2021-05-22T00:00:00.000Z",
           "start": "2021-05-21T00:00:00.000Z",
           "tweet_count": 1
       },
       {
           "end": "2021-05-23T00:00:00.000Z",
           "start": "2021-05-22T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-24T00:00:00.000Z",
           "start": "2021-05-23T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-25T00:00:00.000Z",
           "start": "2021-05-24T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-26T00:00:00.000Z",
           "start": "2021-05-25T00:00:00.000Z",
           "tweet_count": 1
       },
       {
           "end": "2021-05-27T00:00:00.000Z",
           "start": "2021-05-26T00:00:00.000Z",
           "tweet_count": 1
       },
       {
           "end": "2021-05-28T00:00:00.000Z",
           "start": "2021-05-27T00:00:00.000Z",
           "tweet_count": 1
       },
       {
           "end": "2021-05-29T00:00:00.000Z",
           "start": "2021-05-28T00:00:00.000Z",
           "tweet_count": 2
       },
       {
           "end": "2021-05-30T00:00:00.000Z",
           "start": "2021-05-29T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-05-31T00:00:00.000Z",
           "start": "2021-05-30T00:00:00.000Z",
           "tweet_count": 0
       },
       {
           "end": "2021-06-01T00:00:00.000Z",
           "start": "2021-05-31T00:00:00.000Z",
           "tweet_count": 0
       }
   ],
   "meta": {
       "total_tweet_count": 22
   }
}
Sixième étape : Paginer vos résultats Si l’objet meta dans votre réponse contient également next_token, vous pouvez transmettre sa valeur au paramètre de requête next_token.
KeyValueDescription
next_tokenAjoutez ici le next_token que vous avez récupéré dans l’objet meta de votre requête précédente.Si votre dernière requête ne renvoie pas l’ensemble des résultats, vous recevrez un next_token dans l’objet meta. Récupérez la valeur de ce champ et utilisez-la comme valeur du paramètre next_token dans votre prochaine requête, en conservant tous les autres paramètres de requête inchangés.
Une fois la valeur correcte de next_token définie, cliquez sur le bouton « Send » pour recevoir la page de résultats suivante.
I