Nachdem der*die Nutzer*in die Facebook Business Extension installiert hat und du seinen*ihren Nutzer-Zugriffsschlüssel hast (der für API-Aufrufe für den Benutzer verwendet wird), musst du die Pixel-ID, Instagram Business-ID, Seiten-ID, Business Manager-ID, Werbekonto-ID, Katalog-ID (optional) oder den Zugriffsschlüssel von dem*der Nutzer*in abrufen, um die entsprechenden Features zu konfigurieren. Diese IDs werden für API-Endpunkte und Unternehmenskonfigurationen verwendet.
Mit der OBO-Lösung kann der Kunde den Zugriffsschlüssel abrufen, indem er auch den Zugriffsschlüssel des Admin-Systemnutzers des Business Managers des Partners verwendet, anstatt nur den des Administrators des Business Managers des Kunden.
So gelangst du an diese Informationen:
Nachdem ein*e Nutzer*in FBE installiert hat, generiert die Erweiterung im Business Manager des Kunden einen Systemnutzer für Mitarbeiter*innen. Die Benennung dieses neuen Systemnutzers erfolgt nach folgendem Schema: {App Name} System User (FBE)
.
Systemnutzer stellen Server oder Software dar, die API-Aufrufe an Assets durchführen, die im Besitz eines Business Managers sind oder von diesem verwaltet werden.
Dieser Systemnutzer hat Berechtigungen für alle zugewiesenen FBE-Assets mit den folgenden Aufgabenberechtigungen:
'MANAGE'
'MANAGE'
'MANAGE'
'EDIT'
Wenn du einen Zugriffsschlüssel für Nutzer*innen über einen Webhook oder den Unternehmens-Login nach einer FBE-Installation erhältst, kannst du denselben Zugriffsschlüssel verwenden, um den Systemnutzer-Zugriffsschlüssel des Business Managers abzurufen. Tätige hierfür den folgenden API-Aufruf:
curl -X POST \ -F 'app_id={app_id}' \ -F 'scope={permissions}' \ -F 'access_token={access_token}' \ -F 'fbe_external_business_id={fbe_external_business_id}' \ https://graph.facebook.com/<API_VERSION>/<client_business_manager_id>/access_token
Verwende für das Feld scope
die Berechtigung manage_business_extension
. Je nach Anwendungsfall benötigst du möglicherweise auch ads_management
oder catalog_management
.
Für das Feld access_token
kannst du einen Nutzer-Zugriffsschlüssel (user_access_token
) oder den Zugriffsschlüssel des Admin-Systemnutzers im Business Manager des Partners (partner_bm_admin_system_user_token
) übergeben. Erfahre mehr über Zugriffsschlüssel für Unternehmen.
Das Feld token_type
aus dem Webhook gibt an, ob der erhaltene access_token
ein Nutzer-Zugriffsschlüssel oder ein Systemnutzer-Zugriffsschlüssel ist.
Wenn der*die Nutzer*in FBE über Instagram installiert, gibt der Webhook das Token des Systemnutzers zurück, das im Business Manager des Kunden generiert wurde, sodass du diese API nicht aufrufen musst.
Um aktualisierte Eingabeaufforderungen zu Installationen, Deinstallationen und Neukonfigurationen von FBE zu erhalten, lösen wir jedes Mal Webhook-Events aus, wenn eines deiner Unternehmen FBE installiert, ändert oder deinstalliert.
Jedes Mal, wenn ein*eine Nutzer*in FBE installiert oder ändert, sollte deine App die Webhook-Konfiguration überprüfen, um zu verstehen, welche Assets der*die Nutzer*in geändert, hinzugefügt oder aus der Verbindung mit deiner App entfernt hat. Das Verhalten deiner App sollte auf der Grundlage der aktuell verbundenen Assets aktualisiert werden.
GET
) und Event-Benachrichtigungen (POST
).fbe_install
-Webhook wird automatisch abonniert. Die Karte verfügt außerdem über einen Umschalter, mit dem das Abonnement im Bedarfsfall deaktiviert werden kann.Jedes Mal, wenn ein Installations-Webhook empfangen wird, muss deine Anwendung die folgenden Aktionen durchführen.
Führe die folgenden Schritte bei der Deinstallation aus:
Antwortfelder
Feld | Beschreibung |
---|---|
ad_account_id Typ: String | Die von dem Benutzer in der FBE ausgewählte Anzeigenkoto-ID. Mit diesem Werbekonto kannst du Werbeanzeigen verwalten, wenn deine App über |
business_manager_id Typ: String | Die für die FBE verwendete Business Manager-ID. Siehe die verknüpften Assets der |
catalog_id Typ: String | Die von dem Nutzer in der FBE ausgewählte Katalog-ID. Diese ID kann von Nutzern zum Verwalten ihres Produktkatalogs verwendet werden. Siehe die verknüpften Assets der |
fbe_event Typ: String | FBE-Event, das angibt, ob die Event-Benachrichtigung eine Installation oder eine Deinstallation ist. Siehe die verknüpften Assets der |
flow Typ: String | Ablauf, der angibt, mit welchem Ablauf ein*e Nutzer*in das Onboarding durchgeführt hat (z. B. |
commerce_merchant_settings_id Typ: String | ID der Commerce-Händler-Einstellungen, die verwendet wurden, um Partnern das Lesen von Informationen in Bezug auf die ausgewählten Commerce-Händler-Einstellungen der FBE zu ermöglichen. Siehe die verknüpften Assets der |
onsite_eligible Typ: Boolescher Wert | Berechtigung für den Handel auf der Seite. Gibt an, ob die ausgewählten Assets für Handel auf der Seite berechtigt sind. Der Händler muss weiterhin Onsite-Absichten haben und Rücksendungen/Versand/Zahlungen auf der Partner-Webseite auswählen. Siehe die verknüpften Assets der |
profiles Typ: Array | Liste mit Profilen (eine Facebook-Seiten-ID und/oder eine Instagram Business-Profil-ID). Erstelle mit diesen IDs eigene Graph API-Anfragen für andere Facebook-Integrationen, die du möglicherweise hast. Siehe die verknüpften Assets der |
pages Typ: Array | Liste mit Facebook-Seiten-IDs. Erstelle mit diesen IDs eigene Graph API-Anfragen für andere Facebook-Seitenintegrationen, die du möglicherweise hast. Siehe die verknüpften Assets der |
instagram_profiles Typ: Array | Liste mit Instagram Business-Profil-IDs. Erstelle mit diesen IDs eigene Graph API-Anfragen für andere Facebook/Instagram-Integrationen, die du möglicherweise hast. Wenn dieses Feld nicht enthalten ist, bedeutet dies, dass der Umfang nur auf Instagram bezogen ist. Beispiel: |
pixel_id Typ: String | Individuelle Pixel-ID für dieses Unternehmen, die du speichern und zum Auslösen von Pixel-Events verwenden solltest. Siehe die verknüpften Assets der |
token_type Typ: String | Zugriffsschlüsseltyp. Gibt an, ob das empfangene |
installed_features Typ: Array | Liste der Features, die diese Unternehmen während des Onboardingprozesses integriert/installiert hat. Siehe die aktuelle Feature-Liste. |
feature_instance_id Typ: Array | ID, die jedes installierte Feature eindeutig darstellt. Kann künftig verwendet werden, um eine bestimmte Instanz zu bearbeiten oder zu deinstallieren. Sie ist dieselbe |
feature_type Typ: String | Typ des installierten Features. Die Tabelle Feature-Liste enthält alle verfügbaren Features. Du musst nur die Features nachverfolgen, die du aktiviert hast. |
connected_assets Typ: Array | Liste der für jedes Feature unterschiedlichen und relevanten Assets. Die Asset-Beschreibungen entsprechen denen, die am Anfang dieser Tabelle genannt werden. |
additional_info Typ: Array | Zusätzliche Informationen über das verknüpfte Feature. |
Wenn du ein Webhook-Event für eine Neuinstallation erhältst, musst du Folgendes tun: 1) die Zuordnung der business_id
mit ihrer pixel_id
aufrechterhalten, da die Pixel-ID für dieses Unternehmen einzigartig ist und zum Auslösen von Standard-Pixel-Events verwendet werden soll, und 2) den Bestand für dieses Unternehmen mit einer der Katalog-PUSH-APIs aktualisieren, sofern sie aktiviert sind.
onsite_commerce_eligible
-Feld{ "data": [{ "ad_account_id": "<ad_account_id>", "business_manager_id": "<business_manager_id>", "catalog_id": "<catalog_id>", "commerce_merchant_settings_id": "<commerce_merchant_settings_id>", "onsite_eligible": true, "profiles": [ "<page_id>", "<instagram_profile_id>" ], "pages": [ "<page_id>" ], "instagram_profiles": [ "<instagram_profile_id>" ], "pixel_id": "<pixel_id>", "token_type": "<token_type>", "installed_features": [ { "feature_instance_id": "<unique_id>", "feature_name" : string, "feature_type": enum, "connected_assets": { "ad_account_id": "<ad_account_id>", "business_manager_id": "<business_manager_id>", "catalog_id": "<catalog_id>", "commerce_merchant_settings_id": "<commerce_merchant_settings_id>", "ig_profile_id": "<instagram_profile_id>" "page_id": "<page_id>", "pixel_id": "<pixel_id>", }, "additional_info": { "onsite_commerce_eligible": bool }, { "shop_status": array }, { "shop_status_info": array } } ] }] }
Für alle Unternehmen mit installierter FBE kannst du grundlegende Installationsinformationen abfragen (pixel_id
und eine Liste mit Profilen mit einer IG Business ID and/or Page ID
) mit dem folgenden Endpunkt:
CURL -X GET 'https://graph.facebook.com/<API_VERSION>/fbe_business/fbe_installs?fbe_external_business_id=<fbe_external_business_id>&access_token=<access_token>'
{ "data": [{ "token_type": "<token_type>" "installed_features": [ { "feature_instance_id": "<unique_id>", “feature_name” : string, "feature_type": enum, "connected_assets": { “ad_account_id”: "<ad_account_id>", “business_manager_id”: "<business_manager_id>", “catalog_id”: "<catalog_id>", “commerce_merchant_settings_id”: "<commerce_merchant_settings_id>", “ig_profile_id”: "<instagram_profile_id>" "page_id": "<page_id>", "pixel_id": "<pixel_id>", }, "additional_info": { "onsite_commerce_eligible": bool }, { "shop_status": array }, { "shop_status_info": array } } ] }] }
Die Antwort enthält die folgenden Felder. Diese stellen nun die zentrale Informationsquelle in der Liste „installed_features“ der verbundenen Assets dar:
Feld | Beschreibung |
---|---|
Typ: String | Token-Typ, der angibt, ob der empfangene |
Typ: Array | Liste der Features, die diese Unternehmen während des Onboarding-Prozesses integriert oder installiert hat. |
Typ: String | Eindeutige ID, die jedes installierte Feature eindeutig darstellt. Kann künftig verwendet werden, um eine bestimmte Instanz zu bearbeiten oder zu deinstallieren. Sie ist dieselbe |
Typ: String | Name der eindeutigen Funktion. |
Typ: String | Typ des installierten Features. Du musst nur die Features nachverfolgen, die du aktiviert hast. |
Typ: Array | Liste der für jedes Feature relevanten Assets. |
Typ: String | Weitere Informationen über das verknüpfte Feature, einschließlich „Active“ bedeutet, dass der Shop sichtbar ist. „Inactive_offsite“ bedeutet, dass der Shop nicht sichtbar ist, da er keinen Onsite-Checkout verwendet. „Inactive_other“ bedeutet, dass der Shop nicht sichtbar ist, wobei der Grund dafür nicht mit der Art des Checkouts zusammenhängt. „No_longer_available“ bedeutet, dass der Shop nicht in den USA ansässig ist und sich in keinem Schlüsselmarkt befindet und nicht mehr verfügbar ist. |
Das Modell enthält die ID der Feature-Instanz für jedes Feature und neue Felder, die aus einem Array aller Features desselben Typs bestehen, die das Unternehmen installiert hat (z. B. mehrere Seiten-CATs).
Für nicht anpassbare Features wird nur eine Feature-Instanz-ID und die Kennzeichnung „Aktiviert“ angezeigt. Du kannst nur die anpassbaren Features mit einer POST
-Anfrage aktualisieren.
Dieses Modell unterscheidet sich von der FBE Installation API, da es zusätzliche Feature-Informationen bereitstellt, die über die verknüpften Assets hinausgehen und auch den Status „Aktiviert“ sowie bestimmte Feature-Anpassungen umfassen. Nachdem du die FBE Installation API aufgerufen hast, verwende diese API, wenn weitere Informationen über den Status „Aktiviert“ oder die Konfigurationen des Features erforderlich sind.
Lesen
Du kannst den aktuellen Feature-Konfigurationsstatus jedes Unternehmens lesen, indem du die folgende Anfrage stellst:
CURL -X GET 'https://graph.facebook.com/<API_VERSION>/fbe_business/?fbe_external_business_id=<fbe_external_business_id>&access_token=<access_token>'
Aktualisieren
Um alle Features zu aktualisieren, stelle die folgende POST
-Anfrage:
CURL -i -X POST \ -F 'fbe_external_business_id=<fbe_external_business_id>' \ -F 'business_config={business_config object}' \ -F 'access_token=<access_token>' "https://graph.facebook.com/<API_VERSION>/fbe_business"
Antwort
{ "page_cta": { "feature_instance_id": id1, "enabled": true, "cta_button_text": "Book Now", "cta_button_url": "https://partner-site.com/foo-business1", "below_button_text": "Powered by FBE Partner" }, "page_ctas": [ { "feature_instance_id": id1, "enabled": true, "cta_button_text": "Book Now", "cta_button_url": "https://partner-site.com/foo-business1", "below_button_text": "Powered by FBE Partner" }, { "feature_instance_id": id2, "enabled": true, "cta_button_text": "Book Now", "cta_button_url": "https://partner-site.com/foo-business2", "below_button_text": "Powered by FBE Partner" } ], “ig_cta”: {...} "ig_ctas": [{...}, {...}], “ads”: [ { "feature_instance_id": id3, “enabled”: true, }, { "feature_instance_id": id4, “enabled”: true, }, ], ... }