Ce document explique comment appeler la prise en charge d’Instagram par l’API Messenger (également appelée API de messagerie Instagram dans nos Politiques développeur) avec votre application et récupérer les messages d’un compte professionnel Instagram. Nous partons du principe que vous connaissez bien l’API Graph et Facebook Login.
Vous devrez avoir accès aux éléments suivants :
MODERATE
tâches sur cette Page Développeur·ses qui ne connaissent pas la plateforme Messenger
Développeur·ses qui connaissent la plateforme Messenger
Vous pouvez utiliser Facebook Login ou Business Login pour Instagram pour demander aux utilisateur·ices de votre application les autorisations nécessaires.
Le flux Business Login pour Instagram permet aux personnes d’effectuer les opérations suivantes pendant le flux de connexion :
Pour implémenter Business Login pour Instagram, consultez notre guide Business Login pour Instagram , puis revenez à ce guide.
Assurez-vous que vous êtes connecté·e à votre compte de développeur·se Facebook, puis accédez à votre application et lancez la fenêtre modale Facebook Login. N’oubliez pas que votre compte de développeur·se Facebook doit être autorisé à exécuter des tâches avec au moins un niveau d’accès « Modéré » sur la Page Facebook associée au compte Instagram que vous souhaitez interroger.
Une fois la fenêtre modale lancée, cliquez sur OK pour accorder les autorisations instagram_basic
, instagram_manage_messages
et pages_manage_metadata
à votre application.
L’API doit renvoyer un token d’accès utilisateur·ice. Enregistrez ce token pour que votre application puisse l’utiliser pour les prochaines requêtes. Si vous utilisez l’Explorateur de l’API Graph, il sera enregistré automatiquement et affiché dans le champ Token d’accès pour information :
Interrogez le point de terminaison GET /me/accounts
(ce qui se traduit par GET /{user-id}/accounts
, qui exécute la commande GET sur le nœud Utilisateur Facebook, selon votre token d’accès).
curl -i -X GET \ "https://graph.facebook.com/v9.0/me/accounts?access_token={access-token}"
Cette commande doit renvoyer une collection de Pages Facebook dans lesquelles l’utilisateur·ice Facebook actuel peut effectuer les tâches MANAGE
, CREATE_CONTENT
, MODERATE
et ADVERTISE
:
{ "data": [ { "access_token": "EAAJjmJ...", "category": "App Page", "category_list": [ { "id": "2301", "name": "App Page" } ], "name": "Metricsaurus", "id": "134895793791914", // capture the Page ID "tasks": [ "ANALYZE", "ADVERTISE", "MODERATE", "CREATE_CONTENT", "MANAGE" ] } ] }
Enregistrez l’ID de la Page Facebook connectée au compte Instagram que vous souhaitez interroger. N’oubliez pas que les utilisateur·ices de votre application peuvent être autorisé·es à effectuer des tâches sur plusieurs pages, et que vous devrez donc à terme introduire une logique capable de déterminer le bon ID de Page à enregistrer (ou concevoir une UI dans laquelle les utilisateur·ices de votre application peuvent eux-mêmes et elles-mêmes identifier la bonne Page).
Pour effectuer différents appels à l’API Instagram Messaging, vous devrez utiliser le token d’accès de Page associé au compte professionnel Instagram concerné, précédemment octroyé via le processus Facebook Login.
Envoyez une requête GET
au point de terminaison /{page-id}
avec votre token d’accès utilisateur·ice. Par exemple :
curl -i -X GET "https://graph.facebook.com/{page-id}? fields=access_token& access_token={user-access-token}"
En cas de réussite, votre app reçoit la réponse suivante :
{ "access_token":"{page-access-token}", "id":"{page-id}" }
Pour générer un token d’accès de Page de longue durée, vous pouvez suivre ce guide.
Cet outil (Tableau de bord des développeur·ses Instagram) sera déployé pour l’ensemble des équipes de développement dans les semaines à venir. Si vous ne voyez pas les paramètres associés dans l’Espace App, suivez les étapes 1 à 5 ci-dessus pour générer des tokens d’accès de Page.
Si vous êtes propriétaire des éléments (compte Instagram et Page Facebook) que vous souhaitez intégrer à la prise en charge d’Instagram par l’API Messenger, servez-vous de l’outil de configuration d’Instagram disponible dans l’Espace App de développement, qui vous permet de créer facilement des tokens d’accès de Page et des webhooks. Vous trouverez cet outil dans l’Espace App de développement → Messenger → Paramètres Instagram. Vous pourrez continuer à configurer des tokens et des webhooks comme auparavant, mais cet outil facilitera la configuration de votre environnement.
Pour gérer les messages Instagram via l’API, les comptes professionnels Instagram doivent activer les outils connectés dans les paramètres du contrôle des messages.
Utilisez l’ID de Page que vous avez enregistré et le token d’accès de Page pour interroger le point de terminaison GET /{page-id}/conversations?platform=instagram
:
curl -i -X GET \ "https://graph.facebook.com/v9.0/17841405822304914/conversations?platform=instagram&access_token={access-token}"
Cette commande doit renvoyer les ID de tous les objets de fil de discussion de l’utilisateur·ice Instagram :
{ "data": [ { "id": "aWdfZAG06MTpJR01lc3NhZA2VUaHJlYWQ6OTAwMTAxNDYyOTkyODI6MzQwMjgyMzY2ODQxNzEwMzAwOTQ5MTI4MTM2MDk5MDc1MzYyOTgx" }, { "id": "aWdfZAG06MTpJR01lc3NhZA2VUaHJlYWQ6OTAwMTAxNDYyOTkyODI6MzQwMjgyMzY2ODQxNzEwMzAwOTQ5MTI4MTYzMzQ2MzE5NjM1NDcy" }, { "id": "aWdfZAG06MTpJR01lc3NhZA2VUaHJlYWQ6OTAwMTAxNDYyOTkyODI6MzQwMjgyMzY2ODQxNzEwMzAwOTQ5MTI4MTk3MTY0NjI2NzAyMjMw" }, { "id": "aWdfZAG06MTpJR01lc3NhZA2VUaHJlYWQ6OTAwMTAxNDYyOTkyODI6MzQwMjgyMzY2ODQxNzEwMzAwOTQ5MTI4MzkzNDI5MDYzMzkyNjU0" } }
Si vous parvenez à exécuter cette requête finale, vous devez être en mesure d’exécuter des requêtes à l’aide de n’importe quel point de terminaison de la prise en charge d’Instagram par l’API Messenger. Consultez nos différents guides et documents de référence pour découvrir à quoi sert chaque point de terminaison et quelle autorisation il requiert.