Verbinden mit Personen in Apps und Bots im Messenger

Häufig verwenden Unternehmen mehrere Kanäle für die Kommunikation mit ihren Kunden, wie Webseiten, mobile Apps und Messenger. Wenn eine Person Facebook Login auf einer Webseite oder in einer mobilen App verwendet, wird eine ID für diese Facebook-App erstellt. Diese wird als App-spezifische ID bezeichnet. Wenn eine Person über Messenger mit einem Unternehmen interagiert, wird eine ID für die Seite erstellt, die mit dem Bot in Messenger verknüpft ist. Dies wird als seitenspezifische ID bezeichnet. Das bedeutet, dass die IDs für eine Person über verschiedene Kommunikationskanäle hinweg unterschiedlich sind. Denke daran, dass App-spezifische IDs erstellt werden, wenn sich ein Nutzer bei deiner App anmeldet. Für Nutzer, die die App nicht installiert und sich entsprechend auch nicht angemeldet haben, werden keine App-spezifischen IDs angezeigt.

Eventuell möchte ein Unternehmen kanalübergreifend ein nahtloses Erlebnis bereitstellen. Wenn jemand z. B. über einen Bot in Messenger mit einem Unternehmen kommuniziert, könnte das Erlebnis personalisiert werden, wenn das Unternehmen die Person als Bestandskunden in seiner Facebook-App (z. B. einer Webseite oder einer mobilen App mit Facebook Login) erkennt. Wir bieten eine API an, mit der du IDs für dieselbe Person über Apps und Bots desselben Unternehmens in Messenger hinweg abrufen kannst.

Zunächst musst du Facebook mitteilen, dass die Apps und Seiten, die mit einem Bot in Messenger verknüpft sind, zum gleichen Unternehmen gehören. Dazu musst du im Facebook Business Manager:

Daraufhin kannst du die ids_for_apps- oder ids_for_pages-Edge für den user-Node abfragen, um IDs abzurufen.

Dein erster API-Aufruf löst möglicherweise eine App-Überprüfung aus, die ca. 48 Stunden in Anspruch nehmen kann.

In diesem Dokument wird Folgendes behandelt:

Anwendungsfälle

Für diese API gibt es einige primäre Anwendungsfälle:

Rufe anhand einer Nutzer-ID für einen Bot in Messenger die IDs für Apps ab, die demselben Unternehmen gehören.

  • User-Node: Eine spezifische ID für die Seite, die mit einem Bot in Messenger verknüpft ist.
  • Edge:ids_for_apps
  • Anforderungen: Dazu sind ein Seiten-Zugriffsschlüssel und ein appsecret_proof erforderlich. Beide Elemente müssen mit der App erstellt werden, die die Seite verwaltet. Darüber hinaus müssen die App, die die Seite verwaltet, und die andere(n) App(s) demselben Unternehmen gehören.

Beispiele:

  1. Dies gibt die IDs für alle Apps zurück, die demselben Unternehmen gehören.
    GET /{user-id}/ids_for_apps
        ?access_token=[page_access_token]
        &appsecret_proof=[appsecret_proof]
  2. Dies gibt die ID für die App mit der App-ID 10152368852405295 zurück.
    GET /{user-id}/ids_for_apps
        ?app=10152368852405295
        &access_token=[page_access_token]
        &appsecret_proof=[appsecret_proof]

Rufe anhand einer Nutzer-ID für eine App die IDs für Bot in Messenger ab, die demselben Unternehmen gehören.

  • User-Node: Eine App-spezifische ID.
  • Edge:ids_for_pages
  • Anforderungen: Dazu sind ein Seiten-Zugriffsschlüssel und ein appsecret_proof erforderlich. Beide Elemente müssen mit der App erstellt werden, die die Seite(n) verwaltet und für die die ID gilt. Darüber hinaus müssen die App und die Seite(n) demselben Unternehmen gehören.

Beispiele:

  1. Dies gibt die IDs für alle Bots in Messenger zurück, deren Seite demselben Unternehmen gehört.
    GET /{user-id}/ids_for_pages
        ?access_token=[app_access_token]
        &appsecret_proof=[appsecret_proof]
  2. Dies gibt die ID für den Bot in Messenger zurück, dessen Seite die Seiten-ID 380374449010653 aufweist.
    GET /{user-id}/ids_for_pages
        ?page=380374449010653
        &access_token=[app_access_token]
        &appsecret_proof=[appsecret_proof]

Rufe anhand einer Nutzer-ID für eine App die IDs für andere Apps ab, die demselben Unternehmen gehören.

  • User-Node: Der User-Node ist eine für die App spezifische ID.
  • Edge:ids_for_apps
  • Anforderungen: Dazu ist ein App-Zugriffsschlüssel erforderlich. Dieser wird mit der App erstellt, zu der die ID gehört. Darüber hinaus müssen die Apps demselben Unternehmen gehören.

Beispiele:

  1. Dies gibt die IDs für alle Apps zurück, die demselben Unternehmen gehören.
    GET /{user-id}/ids_for_apps
        ?access_token=[app_access_token]
  2. Dies gibt die ID für die App mit der App-ID 10152368852405295 zurück.
    GET /{user-id}/ids_for_apps
        ?app=10152368852405295
        &access_token=[app_access_token]

Rufe anhand einer Nutzer-ID für eine Seite (die mit einem Bot verknüpft ist) die IDs für andere Seiten ab, die demselben Unternehmen gehören.

  • User-Node: Eine spezifische ID für die Seite, die mit einem Bot in Messenger verknüpft ist.
  • Edge:ids_for_pages
  • Anforderungen: Dazu sind ein Seiten-Zugriffsschlüssel und ein appsecret_proof erforderlich. Beide Elemente müssen mit der App erstellt werden, die die Seite verwaltet. Darüber hinaus müssen die Seiten demselben Unternehmen gehören.

Beispiele:

  1. Dies gibt die IDs für alle Seiten zurück, die demselben Unternehmen gehören.
    GET /{user-id}/ids_for_pages
        ?access_token=[page_access_token]
        &appsecret_proof=[appsecret_proof]
  2. Dies gibt die ID für die Seite mit der App-ID 380374449010653 zurück.
    GET /{user-id}/ids_for_pages
        ?app=380374449010653
        &access_token=[page_access_token]
        &appsecret_proof=[appsecret_proof]

Beispielabfragen

Rufe zugehörige IDs aus einer App-ID ab.

GET /{user-id}
    ?fields=name,age_range,ids_for_apps,ids_for_pages
    &access_token=[app_access_token]

Beispielantwort:

{
  "name": "John Smith",
  "age_range": {
    "min": 21
  },
  "ids_for_apps": {
    "data": [
      {
        "id": "10152368852405295",
        "app": {
          "category": "Business",
          "link": "https://www.facebook.com/games/?app_id=1419232575008550",
          "name": "John's Game App",
          "id": "1419232575008550"
        }
      },
      {
        "id": "645195294",
        "app": {
          "link": "https://apps.facebook.com/johnsmovieappns/",
          "name": "JohnsMovieApp",
          "namespace": "johnsmovieappns",
          "id": "259773517400382"
        }
      }
    ],
    "paging": ...
  },
  "ids_for_pages": {
    "data": [
      {
        "id": "12345123", // The psid for the user for that page
        "page": {
          "category": "Musician",
          "link": "https://www.facebook.com/Johns-Next-Great-Thing-380374449010653/",
          "name": "John's Next Great Thing",
          "id": "380374449010653"
        }
      }
    ],
    "paging": ...
  },
  "id": "645195294"
}

Rufe zugehörige IDs aus einer ID für einen Bot in Messenger ab.

GET /{user-id}
    ?fields=name,is_payment_enabled,ids_for_apps,ids_for_pages
    &access_token=[page_access_token]
    &appsecret_proof=[appsecrete_proof]

Beispielantwort:

{
  "name": "John Smith",
  "is_payment_enabled": true,
  "ids_for_apps": {
    "data": [
      {
        "id": "10152368852405295",
        "app": {
          "category": "Business",
          "link": "https://www.facebook.com/games/?app_id=1419232575008550",
          "name": "John's Game App",
          "id": "1419232575008550"
        }
      },
      {
        "id": "645195294",
        "app": {
          "link": "https://apps.facebook.com/johnsmovieappns/",
          "name": "JohnsMovieApp",
          "namespace": "johnsmovieappns",
          "id": "259773517400382"
        }
      }
    ],
    "paging": ...
  },
  "ids_for_pages": {
    "data": [
      {
        "id": "12345123", // The psid for the user for that page
        "page": {
          "category": "Musician",
          "link": "https://www.facebook.com/Johns-Next-Great-Thing-380374449010653/",
          "name": "John's Next Great Thing",
          "id": "380374449010653"
        }
      }
    ],
    "paging": ...
  },
  "id": "645195294"
}

    

Richtlinien

Unternehmen dürfen die API nur dafür verwenden, die IDs für die App oder Seite dieses Unternehmens mit einer anderen App oder Seite zu verbinden, die demselben Unternehmen gehört und für dieses verwaltet wird. Dienstanbieter dürfen die API beispielsweise nicht dazu einsetzen, mehrere Kunden zu unterstützen.

Bei potenziellen Verletzungen dieser Richtlinie werden deine API-Anfragen einer Überprüfung unterzogen. Außerdem wird die Fehlermeldung „(#200) Your business is currently going through review to access this API“ angezeigt.