Die folgenden Inhalte stammen aus der Webhooks-Produktdokumentation. Sieh dir die Webhooks-Dokumentation an, wenn du Webhooks noch nicht kennst.

Webhooks für Seiten

Webhooks für Seiten kann dir bei Änderungen an deinen Seiten Benachrichtigungen in Echtzeit senden. Du kannst z. B. Echtzeit-Updates erhalten, wenn Nutzer*innen in deinem Feed posten, einen Beitrag kommentieren oder deine Beiträge mit „Gefällt mir” markieren.

So richtest du einen Webhook für eine Seite ein:

  1. Richte deinen Endpunkt ein und konfiguriere das Webhooks-Produkt.
  2. Installiere deine App über deine Facebook-Seite.

Endpunkt und Webhooks-Produkt einrichten

Befolge unseren Leitfaden für die ersten Schritte, um deinen Endpunkt zu erstellen und das Webhooks-Produkt zu konfigurieren. Wähle bei der Konfiguration unbedingt das Objekt Seite aus und abonniere eines oder mehrere der unten stehenden Seitenfelder.

FeldBeschreibung

feed

Du wirst benachrichtigt, wenn der Feed einer Seite geändert wurde; Beiträge, Reaktionen, Teilen-Events etc.

messages

Du wirst benachrichtigt, wenn deine Seite eine Nachricht über Messenger erhalten hat. Eine Liste aller verfügbaren Webhook-Felder für Nachrichten findest du im Leitfaden zu Webhooks für die Messenger-Plattform.

Deine App installieren

Webhooks-Benachrichtigungen werden nur gesendet, wenn deine Webhooks-konfigurierte App für deine Seite installiert ist und die Seite die App-Plattform in den App-Einstellungen nicht deaktiviert hat. Wenn die App für deine Seite installiert werden soll, kannst du den Zugriffsschlüssel der Seite nutzen, sodass deine App eine POST-Anfrage an die subscribed_apps-Edge der Seite sendet.

Anforderungen

Nur für Nachrichtenfelder

Beispielanfrage

curl -i -X POST "https://graph.facebook.com/{page-id}/subscribed_apps
  ?subscribed_fields=feed
  &access_token={page-access-token}"

Beispielantwort

{
  "success": "true"
}

Wenn du ermitteln möchtest, welche Apps für deine Seite installiert sind, sende stattdessen eine GET-Anfrage:

Beispielanfrage

curl -i -X GET "https://graph.facebook.com/{page-id}/subscribed_apps &access_token={page-access-token} 

Beispielantwort

{
  "data": [
    {
      "category": "Business",
      "link": "https://my-clever-domain-name.com/app",
      "name": "My Sample App",
      "id": "{page-id}"
    }
  ]
}

Wenn für deine Seite keine Apps installiert sind, gibt die API einen leeren Datensatz zurück.

Graph API Explorer

Wenn du deine App nicht programmgesteuert installieren möchtest, kannst du die Installation auch ganz einfach mit dem Graph API Explorer durchführen:

  1. Wähle deine App im Dropdown-Menü Anwendung aus. Der Zugriffsschlüssel deiner App wird dann zurückgegeben.
  2. Klicke auf das Dropdown-Menü Token anfordern und wähle Nutzer-Zugriffsschlüssel abrufen und anschließend die Berechtigung pages_manage_metadata aus. Dadurch wird dein App-Schlüssel gegen einen Nutzer-Zugriffsschlüssel mit der pages_manage_metadata-Berechtigung getauscht.
  3. Klicke erneut auf Token anfordern und wähle deine Seite aus. Dadurch wird dein Nutzer-Zugriffsschlüssel durch einen Seiten-Zugriffsschlüssel ersetzt.
  4. Ändere die Vorgangsmethode, indem du auf das Dropdown-Menü GET klickst und POST auswählst.
  5. Ersetze die Standardanfrage me?fields=id,name durch die ID der Seite gefolgt von /subscribed_apps und übermittle die Anfrage dann.

Häufige Anwendungsfälle

Abrufen von Seiten-Feeddetails

Deine App kann einen Seiten-Feed abonnieren und jedes Mal benachrichtigt werden, wenn Änderungen am Feed vorgenommen werden. Dies ist beispielsweise eine Benachrichtigung, die gesendet wird, wenn ein*e Nutzer*in etwas auf einer Seite veröffentlicht hat.

Webhook-Beispielantwort

[
  {
    "entry": [
      {
        "changes": [
          {
            "field": "feed",
            "value": {
              "from": {
                "id": "{user-id}",
                "name": "Cinderella Hoover"
              },
              "item": "post",
              "post_id": "{page-post-id}",
              "verb": "add",
              "created_time": 1520544814,
              "is_hidden": false,
              "message": "It's Thursday and I want to eat cake."
            }
          }
        ],
        "id": "{page-id}",
        "time": 1520544816
      }
    ],
    "object": "page"
  }
]

Nutze die post_id aus der Benachrichtigung, um den Seitenbeitrag zu kommentieren.

API-Beispielanfrage

curl -i -X POST   "https://graph.facebook.com/{page-post-id}/comments
  ?message=I%20want%20chocolate%20cake%20!
  &access_token=page-access-token" 

API-Beispielantwort

{
  "id": "{comment-id}"
}