Der folgende Content stammt aus der Webhooks-Produktdokumentation. Wenn du dich mit Webhooks nicht auskennst, findest du weitere Informationen in der Webhooks-Dokumentation.
Damit du Live-Webhook-Benachrichtigungen erhältst, müssen folgende Bedingungen erfüllt sein:
Wenn die App-Berechtigungen nicht auf der Zugriffsebene Advanced Access erteilt wurden, erhält die App keine Webhook-Benachrichtigungen.
media
-Feld an.-1
zurückgegeben.comments
und live_comments
empfangen zu können. Erstelle einen Endpunkt, der Webhooks empfängt und verarbeitet. Wähle bei der Konfiguration das Instagram Graph API-Objekt aus und klicke auf Einrichtung. Abonniere mindestens ein Instagram-Feld.
Feld | Beschreibung | Erforderliche Berechtigungen |
---|---|---|
Kommentare zu IG-Medien, die Instagram-Nutzer*innen deiner App besitzen. Die | ||
Kommentare zu Live-IG-Medien, die Instagram-Nutzer deiner App besitzen. | ||
@Erwähnungen für die Instagram-Nutzer deiner App. | ||
Kennzahlen, die Interaktionen zu einer Story beschreiben. Werden eine Stunde nach Ablauf einer Story gesendet. |
Deine App muss die Seitenabonnements auf der Seite aktivieren, die mit dem Konto des*der App-Nutzer*in verknüpft ist. Hierzu wird eine POST
-Anfrage an die Page Subscribed Apps-Edge gesendet und werden alle Seitenfelder abonniert.
POST /{page-id}/subscribed_apps ?access_token={access-token} &subscribed_fields={fields}
Werteplatzhalter | Wertbeschreibung |
---|---|
| ID der mit dem Konto des*der App-Nutzer*in verknüpften Seite. |
| Der Nutzer-Zugriffsschlüssel des App-Nutzers |
| Ein Seiten-Feld (z. B. |
Deine App erhält keine Benachrichtigungen über Änderungen in diesem Feld, es sei denn, du konfigurierst Seiten-Abonnements im App-Dashboard und abonnierst dieses Feld.
curl -i -X POST \
"https://graph.facebook.com/v21.0
/1755847768034402/subscribed_apps?subscribed_fields=feed&access_token=EAAFB..."
{ "success": true }
Wenn du das story_insights
-Feld abonnierst, senden wir deinem Endpunkt eine Webhook-Benachrichtigung mit Kennzahlen zu Nutzer*inneninteraktionen für eine Story, nachdem die Story abgelaufen ist.
[ { "entry": [ { "changes": [ { "field": "story_insights", "value": { "media_id": "18023345989012587", "exits": 1, "replies": 0, "reach": 17, "taps_forward": 12, "taps_back": 0, "impressions": 28 } } ], "id": "17841405309211844", // Instagram Business or Creator Account ID "time": 1547687043 } ], "object": "instagram" } ]
Wenn du das mentions
-Feld abonnierst, senden wir deinem Endpunkt eine Webhook-Benachrichtigung, wenn ein*e Instagram-Nutzer*in ein Instagram Business- oder Creator-Konto in einem Kommentar oder einer Bildunterschrift @erwähnt.
Hier siehst du ein Beispiel für eine Webhook-Benachrichtigungs-Payload für ein Kommentar, die für ein Instagram Business-Konto gesendet wurde (17841405726653026
):
[ { "entry": [ { "changes": [ { "field": "mentions", "value": { "comment_id": "17894227972186120", "media_id": "17918195224117851" } } ], "id": "17841405726653026", "time": 1520622968 } ], "object": "instagram" } ]
Frag zum Abrufen des Kommentarinhalts mithilfe der Eigenschaft comment_id
die GET /{ig-user-id}/mentioned_comment
-Edge ab.
GET https://graph.facebook.com/17841405726653026 ?fields=mentioned_comment.comment_id(17894227972186120)
{ "mentioned_comment": { "timestamp": "2018-03-20T00:05:29+0000", "text": "@bluebottle challenge?", "id": "17894227972186120" }, "id": "17841405726653026" }
Wenn du die Antwort erhältst, analysiere die Payload für die Eigenschaft text
, um festzustellen, ob du auf den Kommentar antworten möchtest. Verwende zum Antworten die Eigenschaftswerte caption_id
und media_id
der Payload für die Webhook-Benachrichtigung, um den POST /{ig-user-id}/mentions
-Endpunkt abzufragen:
curl -i -X POST \ -d "comment_id=17894227972186120" \ -d "media_id=17918195224117851" \ -d "message=Challenge%20accepted!" \ -d "access_token={access-token}" \ "https://graph.facebook.com/17841405726653026/mentions"
{ "id": "17911496353086895" }
Wenn du das mentions
-Feld abonnierst, senden wir jedes Mal eine Webhook-Benachrichtigung an deinen Endpunkt, wenn ein*e Nutzer*in ein Instagram Business- oder Creator-Konto in einem Kommentar oder einer Bildunterschrift zu einem Medienobjekt @erwähnt, das nicht dem Unternehmen oder dem Creator gehört.
Hier ist ein Beispiel für eine Webhook-Benachrichtigungs-Payload für eine Bildunterschrift-@Erwähnung für ein Instagram Business-Konto (17841405726653026
):
[ { "entry": [ { "changes": [ { "field": "mentions", "value": { "media_id": "17918195224117851" } } ], "id": "17841405726653026", "time": 1520622968 } ], "object": "instagram" } ]
Frag zum Abrufen des Inhalts der Bildunterschrift mithilfe der Eigenschaft media_id
die GET /{ig-user-id}/mentioned_media
-Edge ab:
GET https://graph.facebook.com/17841405726653026 ?fields=mentioned_media.media_id(17918195224117851){caption,media_type}
{ "mentioned_media": { "caption": "@bluebottle There can be only one!", "media_type": "IMAGE", "id": "17918195224117851" }, "id": "17841405726653026" }
Wenn du die Antwort erhältst, analysiere die Payload für die Eigenschaft caption
, um festzustellen, ob du auf den Kommentar antworten möchtest. Verwende zum Antworten die Eigenschaft media_id
der Payload der Webhook-Benachrichtigung, um die POST /{ig-user-id}/mentions
-Edge abzufragen:
curl -i -X POST \ -d "media_id=17918195224117851" \ -d "message=MacLeod%20agrees!" \ -d "access_token={access-token}" \ "https://graph.facebook.com/17841405726653026/mentions"
{ "id": "17911496353086895" }