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/v24.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", // ID of the comment in which your app user's Instagram professional account was mentioned
"media_id": "17918195224117851" // ID of the media the Instagram user commented on
}
}
],
"id": "17841405726653026", // ID of your app user's Instagram professional account
"time": 1520622968 // Time the notification was sent
}
],
"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 of the media where your app user's Instagram professional account was mentioned
}
}
],
"id": "17841405726653026", // ID of your app user's Instagram professional account
"time": 1520622968 // The time Meta sent the notification
}
],
"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"
}