Passer au contenu principal

Guide de migration vers l’Account Activity API v2

Ce guide vous aide à migrer de l’ancienne Account Activity API Enterprise vers l’Account Activity API v2. Les fonctionnalités de base restent les mêmes, mais les structures d’endpoint et les méthodes d’authentification ont été mises à jour pour être cohérentes avec la X API v2.

Résumé des modifications

  • Format de l’API : Les endpoints utilisent le chemin de base /2/account_activity/ au lieu de /1.1/account_activity/.
  • Gestion des webhooks : La création, la liste, la validation (CRC) et la suppression des webhooks sont gérées par la V2 Webhooks API.
  • Authentification : Les endpoints v2 nécessitent soit :
    • OAuthUser (OAuth à 3 étapes) pour les actions spécifiques à un utilisateur (p. ex., abonner un utilisateur).
    • OAuth2 App Only (Jeton Bearer) pour les actions au niveau de l’App (p. ex., lister/supprimer des abonnements).
    • v1.1 utilisait des exigences variables, souvent OAuth 1.0a.
  • Correspondance des endpoints :
Endpoint v1.1Équivalent / action v2Remarques
POST /1.1/account_activity/webhooks.json?url=<URL>POST /2/webhooksDocs. Requiert OAuth2AppOnly.
GET /1.1/account_activity/webhooks.jsonGET /2/webhooksDocs. Requiert OAuth2AppOnly.
PUT /1.1/account_activity/webhooks/:webhook_id.jsonPUT /2/webhooks/:webhook_idDéclenche le CRC. Docs. Requiert OAuth2AppOnly.
DELETE /1.1/account_activity/webhooks/:webhook_id.jsonDELETE /2/webhooks/:webhook_idDocs. Requiert OAuth2AppOnly.
POST /1.1/account_activity/webhooks/:webhook_id/subscriptions/all.jsonPOST /2/account_activity/webhooks/:webhook_id/subscriptions/allRequiert OAuthUser.
GET /1.1/account_activity/subscriptions/count.jsonGET /2/account_activity/subscriptions/countRequiert OAuth2AppOnly.
GET /1.1/account_activity/webhooks/:webhook_id/subscriptions/all.jsonGET /2/account_activity/webhooks/:webhook_id/subscriptions/allRequiert OAuthUser.
GET /1.1/account_activity/webhooks/:webhook_id/subscriptions/all/list.jsonGET /2/account_activity/webhooks/:webhook_id/subscriptions/all/listRequiert OAuth2AppOnly.
DELETE /1.1/account_activity/webhooks/:webhook_id/subscriptions/:user_id/allDELETE /2/account_activity/webhooks/:webhook_id/subscriptions/:user_id/allRequiert OAuth2AppOnly.
DELETE /1.1/account_activity/webhooks/:webhook_id/subscriptions/allObsolète / Pas d’équivalent directUtilisez des suppressions individuelles ou supprimez le webhook via DELETE /2/webhooks/:webhook_id.
  • Formats de réponse : Consultez les structures de réponses de réussite et d’erreur dans la documentation AAAPI.
Lors de la migration, mettez à jour votre code pour utiliser les nouveaux chemins de base, ajustez les parcours d’authentification et gérez les webhooks à l’aide de la V2 Webhooks API.

Comment migrer

  • Choisir une offre :
    • Choisissez l’offre Enterprise ou Pro pour l’accès à l’Account Activity API, en tenant compte de :
      • Nombre de webhooks requis.
      • Abonnements ou utilisateurs autorisés actuels/prévus.
      • Nombre d’applications clientes X.
      • Niveau de support souhaité (forum vs support Enterprise géré en 1:1).
      • Détails de tarification (contacter l’équipe commerciale pour Enterprise).
  • Mettre à jour votre authentification vers OAuth 2.0 :
    • Assurez-vous que votre X App dispose des autorisations « Read, Write, and Access Direct Messages ».
    • Passez à OAuth 2.0 pour les endpoints v2. Réautorisez les utilisateurs si les scopes ont changé.
    • Utilisez le developer portal pour gérer :
      • OAuth 2.0 Access Token.
      • Client ID et Client Secret.
  • Vérifier ou reconfigurer votre webhook :
    • Utilisez votre URL de webhook existante ou configurez-en une nouvelle (p. ex., https://your_domain.com/webhook/twitter).
    • Suivez la documentation V2 Webhooks API pour enregistrer et gérer votre webhook.
  • Exemples d’applications :
    • Simple webhook server
      • Un script Python unique qui montre comment répondre au contrôle CRC et accepter des événements POST.
    • Account Activity API sample dashboard
      • Une application web écrite avec bun.sh qui vous permet de gérer les webhooks, les abonnements et de recevoir des événements en direct directement dans l’application.
I