FBE-Onboarding für Anzeigengestaltung

Mit der Facebook Business Extension (FBE) können deine Nutzer*innen ganz einfach Werbeinhalte über die Meta-App-Familie hochladen. Dazu ist eine Verbindung mit einem neuen oder vorhandenen Business Manager erforderlich. Über den Business Manager, der nach diesen Schritten zurückgegeben wird, können Partner Werbeelemente für ihre Kund*innen auf Facebook hochladen:

In diesem Dokument werden die Voraussetzungen für den FBE-Anzeigengestaltungsablauf erläutert und die nötigen Schritte für den Prozess vorgestellt. Konkrete Details zu allgemeinen Integrationen findest du im Leitfaden zu Facebook Business Extension.

Beispiel: Onboarding-Vorgang von Partneroberfläche (Unternehmens-Login)

Bevor du beginnst

  1. Registriere dich als Facebook-Entwickler, um auf unsere Entwickler-Tools zuzugreifen und Facebook-Apps zu erstellen.

  2. Erstelle eine Meta-App, sofern dies noch nicht geschehen ist.

  3. Der Eigentümer deiner Meta-App muss ein Business Manager sein, der ein verifiziertes Unternehmen ist. Erfahre mehr darüber, wie du dein Unternehmen verifizieren kannst.

  4. Erstelle eine Test-App und führe damit alle neuen Entwicklungs- und Testaufgaben aus. Weise deiner Test-App unbedingt einen anderen Business Manager zu.

  5. Private Berechtigungen/Funktion:

  • manage_business_extension – Zugriff auf Facebook Business Extension. Sobald diese Funktion für deine App bereitgestellt wurde, findest du das FBE Developer Panel unter Produkte.

  • Business_creative_asset_management – Zugriff auf APIs für die Verwaltung von Assets in Bezug auf Werbeanzeigen. Sobald diese Funktion erteilt wurde, hast du Zugriff auf folgende Berechtigungen:

    • business_creative_insights: Greife auf Insights zu Werbeinhalten des Unternehmens zu.

    • business_creative_management: Damit kann deine App im Kontext deines Unternehmens neue Ordner erstellen, bearbeiten und teilen sowie Assets in diese Ordner hochladen.

    • business_creative_insights_share (in Entwicklung): Eine optionale Berechtigung im Vorgang zum Teilen von Ordnern. Wenn der*die Nutzer*in diese Berechtigung erteilt, kann deine App den Creative Assets-Ordner mit anderen Unternehmen teilen, sodass diese Insights zu Werbeelementen anzeigen können.

Nach Abschnluss des App-Review

Generiere einen Partnerzugriffsschlüssel

  • Generiere wie hier beschrieben einen Zugriffsschlüssel für einen Admin-Systemnutzer unter deinem Business Manager.

  • Stelle sicher, dass die Berechtigungen business_creative_insights, business_creative_management und business_management im Schritt „Verfügbarer Umfang“ für diesen Schlüssel ausgewählt sind.

Button „Mein Design an Facebook senden“ implementieren

Mit diesem Button sendest du ein Asset von deiner App an die Facebook-Medienbibliothek des Nutzers. Dabei muss deine App zulassen, dass der Nutzer einen Zielordner für das Asset auswählt oder erstellt.

Dafür empfehlen wir zwei Ansätze:

1. (Mindestens) Der Nutzer kann nur einen Ordner der obersten Ebene auswählen oder erstellen. Frage unter dem ausgewählten Unternehmenskontext alle Ordner der obersten Ebene ab, für die der Nutzer Zugriff hat. Bitte den Nutzer, entweder einen vorhanden Ordner der obersten Ebene auszuwählen oder einen neuen zu erstellen. Nutzer können den Ordnernamen angeben oder den Standardordnernamen <YourBusinessName>_<UserBusinessName>_<UserName> verwenden. Lade Assets in den gewählten oder neuen Ordner der obersten Ebene hoch. Für diesen Ansatz musst du kaum Schritte auf der UI ausführen. Die API-Details findest du in Schritt 3 unten.

2. (Optional) Der Nutzer hat vollen Navigationszugriff auf alle Ordner und Unterordner. Frage unter dem ausgewählten Unternehmenskontext alle Ordner der obersten Ebene ab, für die der Nutzer Zugriff hat, und bitte den Nutzer, entweder einen vorhanden Ordner der obersten Ebene auszuwählen oder einen neuen zu erstellen. Für einen neuen Ordner können Nutzer einen eigenen Namen angeben der den Standardnamen <YourBusinessName>_<UserBusinessName>_<UserName> verwenden. Unter dem ausgewählten Ordner der obersten Ebene kann der Nutzer zu einem vorhandenen Unterordner navigieren, einen neuen Unterordner erstellen oder Assets hochladen. Bei dieser Option musst du Ordnernavigation in deiner UI implementieren. Eine Anleitung zur API-Integration findest du in Schritt 3 und Schritt 4 weiter unten.

Erforderliche Schritte zur Implementierung dieses Vorgangs:

  1. Facebook Business Extension implementieren
  2. Unternehmenskontext abrufen
  3. Ordner der obersten Ebene auswählen oder erstellen
  4. Unterordner auswählen oder erstellen
  5. Bilder/Videos hochladen
  6. Teilen von Ordnern mit dir anfragen (optional)
  7. Insights zu Bildern/Videos anzeigen (optional)

1. Facebook Business Extension implementieren

Wenn der Nutzer zum ersten Mal ein Werbeelement an Facebook sendet, muss die Facebook Business Extension den Nutzer auffordern, sich zu authentifizieren und deiner App die notwendigen Berechtigungen und Zugriffsrechte für Assets zu erteilen. Dazu werden Zugriffsschlüssel vergeben, mit denen du auf die Daten des Nutzers auf Facebook zugreifen kannst. Informationen zum Implementieren der Facebook Business Extension in deiner App findest du unter Facebook Business Extension: Erste Schritte. Führe die Schritte im Leitfaden für Business-Apps aus, damit deine App in Business-Apps angezeigt wird.

So rufst du den Anzeigengestaltungsablauf auf:

  • Übergib channel: CREATIVE und business_vertical: CREATIVE unter Setup.
  • Verwende die Berechtigungen business_creative_management und business_creative_insights
    • Erforderlich zum Abfragen von Unternehmens-IDs, Erstellen von Ordnern und Hochladen von Werbeelementen in den Ordner
  • (Optional) Verwende die Berechtigung business_creative_insights_share
    • Damit kann der*die Nutzer*in den Ordner mit der Berechtigung für die Aufgabe VIEW_INSIGHTS mit dir teilen.

Über den mit diesem Aufruf zurückgegebenen Zugriffsschlüssel kannst du API-Aufrufe im Namen des Nutzers senden.

Erforderliche Konfigurationen

Extras

FeldTypBeschreibung

setup

setup

Erforderlich

Die Facebook-Einrichtung des Verkäufers, etwa seine eindeutige ID (external_business_id) oder die Währung seines Katalogs (currency). Siehe Details zum Objekt „setup“.

business_config

business_config

Erforderlich

Konfigurationsobjekt, mit dem die Facebook Business Extension den Facebook Business Extension-Workflow konfiguriert. Siehe Details zum Objekt business_config.

repeat

Boolean

Erforderlich

Lege diesen Wert auf false fest.

Setup

Mit diesem Objekt kannst du die Einstellungen für die Facebook-Präsenz des Endnutzers definieren.

FeldBeschreibung

external_business_id
Typ: String

Erforderlich.
Eindeutige Unternehmens-ID für das Unternehmen deines*deiner Kund*in. Wir verwenden diese als eindeutige ID. Wenn das Unternehmen des*der Verkäufer*in beispielsweise „Fubar“ heißt, könnte die external_business_id „fubar-123“ lauten.

timezone
Typ: String

Erforderlich.
Die Zeitzone, in der sich das Unternehmen befindet. Siehe Mögliche Zeitzonenwerte.

currency
Typ: String

Erforderlich.
ISO-Währungscode mit drei Buchstaben für die Standardwährung, die von den Katalogartikeln des Unternehmens verwendet wird. Siehe Unterstützte Währungscodes.

business_vertical
Typ: Enum

Erforderlich.
Branche des Unternehmens
Werte:CREATIVE

channel
Typ: Enum

Erforderlich
Bietet dem Partner die Möglichkeit, die Absicht für den*die Nutzer*in hinsichtlich Funktionen auszudrücken, die weitere Schritte oder Beschränkungen erfordern. Wert: CREATIVE.

  • CREATIVE: Ablauf, mit dem Nutzer*innen Werbeanzeigen auf Partnerplattformen erstellen und mit dem Business Manager des*der Nutzer*in teilen können.

business_manager_id
Typ: String

Optional.
Business Manager-ID für den vorhandenen Business Manager des*der Nutzer*in, die ein*e Partner*in als Vorauswahl für den*die Nutzer*in im Setup-Vorgang eingeben kann.

Business Config

Mit diesem Objekt konfigurierst du die Unternehmenseinstellungen für einen Endnutzer. Dazu gehören CTA, Services-Karte und mehr. Zu jedem Feld gehört ein „Typ“, der mit den jeweiligen Tabellen unten verknüpft ist.

FeldBeschreibung

business
Typ: FBEBusinessPropertiesConfigData

Erforderlich.
Informationen für das Unternehmen des*der Endnutzer*in.

FBEBusinessPropertiesConfigData

Mit diesem Objekt konfigurierst du den Namen des Unternehmens.

FeldBeschreibung

name
Typ: String

Erforderlich.
Name des Unternehmens

2. Unternehmenskontext abrufen

Nachdem der Nutzer den FBE-Onboarding-Ablauf von oben abgeschlossen hat, erhältst du die Business Manager-ID und den Zugriffsschlüssel des Nutzers von der FBE Installation API oder Webhook-Benachrichtigung.

3. Ordner der obersten Ebene auswählen oder erstellen

Nutzer können Assets in den Ordner der obersten Ebene hochladen oder Unterordner unter diesem Ordner erstellen.

Prüfe zunächst, für welche Ordner der obersten Ebene der Nutzer CREATE_CONTENT-Berechtigungen besitzt. Dazu sendest du eine Anfrage an den <business_id>/creative_folders-Endpunkt (unter Entwicklung).

Ordner der obersten Ebene vom Unternehmen des Nutzers abrufen

Anfrage

curl -X GET \
    -F 'access_token={user-access-token}' \
https://graph.facebook.com/<API_VERSION>/<user_business_id>/creative_folders?filtering=[{field:"permitted_tasks", operator: "EQUAL", value:"create_content"}]

Antwort

{
 "id": "<folder_id>"
}

Fordere den*die Nutzer*in auf, einen vorhandenen Ordner der obersten Ebene auszuwählen oder einen neuen Ordner der obersten Ebene im Kontext des Business Manager des*der Nutzer*in zu erstellen. Für einen neuen Ordner der obersten Ebene können Nutzer einen eigenen Namen angeben der den Standardnamen <YourBusinessName>_<UserBusinessName>_<UserName> verwenden. Wenn der Nutzer den Ordner wieder mit dir teilt, wird er sowohl für dein Unternehmen als auch für das des Nutzers in der Facebook-Asset-Bibliothek angezeigt.

Hinweis: Du erhältst den Unternehmensnamen des Nutzers, indem du eine GET-Anfrage an den {business-id}-Endpunkt sendest. Dabei ist {business-id} die Unternehmens-ID des Nutzers.

Anfrage zum Abrufen der Unternehmensinformationen des Nutzers

Anfrage

curl -X GET \
    -F 'access_token={user-access-token}' \
    https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>

Antwort

{
 "id": {business-id}
 "name": {user-business-name}
}

Anfrage zum Erstellen eines Ordners der obersten Ebene

Anfrage

curl -X POST \
    -F "name={folder_name}"
    -F "description={description}"
    -F 'access_token={user-access-token}' \
    https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>/creative_folders

Antwort

{
 "id": {top-level-folder-id}
}

4. Unterordner auswählen oder erstellen

Wenn du die vollständige Ordnernavigation ermöglichen möchtest, bitte den Nutzer, mit den folgenden Anfragen einen vorhandenen Unterordner auszuwählen oder einen neuen Ordner unter dem Ordner der obersten Ebene zu erstellen:

Unterordner abrufen

  • Setzt business_creative_management-Berechtigung voraus.

Anfrage

curl -X GET \
    -F 'access_token={user-access-token}' \
    https://graph.facebook.com/<API_VERSION>/<parent_folder_id>/subfolders?fields=name

Antwort

{
 "data": [
   {
     "name": "<subfolder_name>",
     "id": "<subfolder_id>"
   }
 ]
}

Unterordner erstellen

  • Setzt business_creative_management-Berechtigung voraus.

Anfrage

curl -X POST \
    -F "name={folder_name}"
    -F "description={description}"
    -F "parent_folder_id={parent-folder-id}"
    -F 'access_token={user-access-token}' \
 https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>/creative_folders

Antwort

{
    "id": {sub-folder-id}
}

Ordner und Unterordner können durch Senden einer DELETE-Anfrage an den <folder_id>- oder <subfolder_id>-Endpunkt gelöscht werden.

5. Bilder und Videos in Unterordner hochladen

Lade Werbeelemente des Nutzers in den Unterordner hoch.

  • Setzt business_creative_management-Berechtigung voraus.

Bilder hochladen

Anfrage

curl -X POST \
    -F 'bytes={image-content-in-bytes-format}' \
    -F 'name={image-name}' \
    -F 'access_token={user-access-token}' \
    -F 'creative_folder_id={subfolder-id}' \
    https://graph.facebook.com/{version}/{business-id}/images

Antwort

{
    "images":{
         "{image-name}":{
             "id":"{business-creative-image-id}",
             "hash":"{hash}",
             "url":"{image-url}"
         }
    }
}

Videos hochladen

Lade ein Video in einer einzelnen Anfrage hoch, wenn es nur wenige Megabyte groß ist, oder lade es in Chunks hoch (siehe nächster Abschnitt unten). Sende den API-Aufruf für den Video-Upload an graph-video.facebook.com anstelle von graph.facebook.com.

Beispiel: Sende eine POST-Anfrage an {business-id}/video und gib dabei den Namen des Videos, die Quelle und die Unterordner-ID an.

Anfrage

curl -X POST \
    -F 'name={video-name}' \
    -F 'source='&#064;&#123;video-path&#125;'' \
    -F 'access_token={user-access-token}' \
    -F 'creative_folder_id={subfolder-id}' \
    https://graph-video.facebook.com/{version}/{business-id}/videos

Antwort

{
  "success": true,
  "business_video_id": "<business_video_id>"
}

Videos in Chunks hochladen

Sende bei größeren Videos eine Startanfrage, eine oder mehrere Übertragungsanfragen und eine Abschlussanfrage.

Um eine Startanfrage zu senden und eine Video-Upload-Session zu erstellen, sende eine POST-Anfrage an /{business-id}/videos, setze das Feld upload_phase auf „start“ und gib file_size in Byte an.

Anfrage

curl -X POST \
 -F 'title={video-name}' \
 -F 'creative_folder_id={subfolder-id}' \
 -F 'access_token={user-access-token}' \
 -F 'upload_phase=start' \
 -F 'file_size={video_file_size_in_bytes}' \
 https://graph-video.facebook.com/<API_VERSION>/<BUSINESS_ID>/videos

Antwort

{
    "upload_session_id": "{session-id}",
    "video_id": "{video-id}",
    "start_offset": "0",
    "end_offset": "52428800"
}

Um [0, 52428800] von deinem Video hochzuladen, teile die Datei gemäß dem Start- und dem End-Offset in Chunks auf und sende diese Chunks dann mit transfer-Anfragen. Wir senden dir für jeden Chunk neue Offsets. Verwende diese neuen Offsets zum Hochladen jedes Chunks.

Beispiel: Ersten Chunk senden

Anfrage

curl -X POST \
    -F 'title={video-name}' \
    -F 'access_token={user-access-token}' \
    -F 'creative_folder_id={subfolder-id}' \
    -F 'upload_phase=transfer' \
    -F 'upload_session_id={session-id}' \
    -F 'start_offset=0' \
    -F 'video_file_chunk=@{binary-chunk-filename}' \
    https://graph-video.facebook.com/<API_VERSION>/<BUSINESS_ID>/videos

Antwort

Wenn der Vorgang erfolgreich ist, senden wir dir die Offsets für den nächsten Chunk.

{
  "start_offset": "52428800", //Start byte position of the next file chunk
  "end_offset": "104857601" //End byte position of the next file chunk
}

Schneide den zweiten Chunk mit dem Bereich [52428800, 104857601] aus der Datei aus und sende ihn:

Anfrage

curl -X POST \
    -F 'title={video-name}' \
    -F 'access_token={user-access-token}' \
    -F 'creative_folder_id={subfolder-id}' \
    -F 'upload_phase=transfer' \
    -F 'start_offset=52428801' \
    -F 'upload_session_id={your-upload-sesson-id}' \
    -F 'video_file_chunk={binary-chunk-filename}' \
    https://graph-video.facebook.com/<API_VERSION>/<BUSINESS_ID>/videos

Antwort

Sende alle weiteren Chunks, bis start_offset gleich end_offset ist:

{
 "start_offset": "152043520",
 "end_offset": "152043520"
}

Die oben gezeigte Antwort gibt an, dass du die ganze Datei hochgeladen hast. Jetzt musst du dieses Video posten und die Upload-Session schließen.

Anfrage

curl -X POST \
    -F 'title={video-name}' \
    -F 'access_token={user-access-token}' \
    -F 'creative_folder_id={business-creative-folder-id}' \
    -F 'upload_phase=finish' \
    -F 'upload_session_id={session-id}' \
    https://graph-video.facebook.com/<API_VERSION>/<BUSINESS_ID>/videos

Wenn beim Hochladen Fehler auftreten, kannst du den Upload dieses Chunks wiederholen. In der Regel sind Fehler auf Probleme mit der Reaktion zurückzuführen. Lade den fehlgeschlagenen Chunk erneut hoch. Weitere Informationen zu Fehlern findest du hier:

Deine App muss den Nutzer darüber informieren, dass der Upload erfolgreich war, und einen Deep Link zu dieser Werbeanzeige hinter dem Call to Action „Werbeanzeige in meiner Facebook-Asset-Bibliothek anzeigen“ verfügbar machen. Deep Link des Ordners oder Assets:

https://business.facebook.com/asset_library/business_creatives/?object_id={asset_id or folder id} (in Entwicklung)

Dieser Link leitet den Nutzer zur Unternehmensauswahlseite, wenn der Nutzer mehrere Business Manager verwendet. Um das Unternehmen eindeutig anzugeben, kannst du den Unternehmenskontext wie folgt in die URL einfügen:

https://business.facebook.com/asset_library/business_creatives/?object_id={asset_id or folder id}&business_id={client_business_id}

Die Deep Link-URL kann auch mit der folgenden GET-Endpunktanfrage abgerufen werden:

curl -X GET \
    /<folder_id or asset_id>
        ?fields=['media_library_url']
        &access_token=<user_access_token>

Über den Link gelangt der*die Nutzer*in direkt zum Ordner oder Asset in der Facebook-Asset-Bibliothek.

6. Teilen von Ordnern mit dir anfragen (optional)

Du kannst anfragen, dass der Ordner der obersten Ebene mit dir geteilt wird, wenn du den Ordner verwalten oder Insights zu den Assets anzeigen möchtest. Sende eine POST-Anfrage an {business-creative-folder-id}/agencies und weise permitted_tasks zu CREATE_CONTENT zu.

Hinweis: Du kannst auch die zulässige Aufgabe VIEW_INSIGHTS zuweisen, wenn der Nutzer deiner App business_creative_insights_share gewährt (in Entwicklung).

Ordner teilen

  • Setzt business_creative_management-Berechtigung voraus.

Anfrage

curl -X POST \
    -F 'permitted_tasks=['CREATE_CONTENT','VIEW_INSIGHTS']' \
    -F 'business={partner-business-id} ' \
    -F 'access_token={user-access-token}' https://graph.facebook.com/<API_VERSION>/<BUSINESS_CREATIVE_FOLDER_ID>/agencies

Die Art der Antwort hängt von der Rolle des*der Nutzer*in im Unternehmen ab:

1) Das Client Token gilt für einen Unternehmens-Administrator:

Die API stellt eine Partnerschaftsvereinbarung zwischen dem Unternehmen des Nutzers und dem des Kunden her.

Antwort

Wenn bereits eine Partnerschaftsvereinbarung zwischen dem Unternehmen des*der Nutzer*in und deinem Unternehmen besteht (Nutzer*innenunternehmen hat einen Ordner mit dir geteilt und du hast bereits eine Anfrage zum Teilen akzeptiert):

{ 
    "success": true
}

Wenn du noch keine Anfrage zum Teilen vom Nutzer*innenunternehmen akzeptiert hast:

{
    "success": true,
    "share_status": "In Progress"
}

In diesem Fall muss dein Unternehmen die Anfrage zum Teilen akzeptieren, bevor es auf alle durch das Teilen aktivierten Funktionen (Anzeigen, Erstellen usw.) zugreifen kann.

Um alle Partnerschaftsvereinbarungen mit ausstehender Genehmigung aufzulisten, sende eine Anfrage mit deinem Partner-Zugriffsschlüssel an {business-id}/received_sharing_agreements und setze request_status auf IN_PROGRESS. Für diese Handlung benötigst du die Berechtigungen business_creative_management und business_management.

Alle Partnerschaftsvereinbarungen auflisten

Anfrage

curl -i -X GET https://graph.facebook.com/<API_VERSION>/<PARTNER_BUSINESS_ID>/received_sharing_agreements
    ?request_status=IN_PROGRESS
    &access_token={partner-access-token}"

Du kannst eine Anfrage zum Teilen akzeptieren, indem du eine POST-Anfrage an business_sharing_agreement_request_id sendest und request_status auf APPROVE setzt. Dieser Schritt ist nur nötig, wenn jemand zum ersten Mal einen Ordner mit deinem Unternehmen teilt. Für diese Handlung benötigst du die Berechtigung business_management:

Partnerschaftsvereinbarungen akzeptieren

Anfrage

curl -X POST \
    -F 'request_status=APPROVE' \
    -F 'access_token={partner-access-token}' \
https://graph.facebook.com/<API_VERSION>/<BUSINESS_SHARING_AGREEMENT_REQUEST_ID>

Antwort

{ 
    "success": true
}

Alternativ dazu kannst du ausstehende Anfragen zum Teilen in der Business Manager-UI genehmigen. Wenn du ausstehende Anfragen im Business Manager anzeigen möchtest, gehe zu Einstellungen > Anfragen > Erhaltene Anfragen. Dort findest du weitere Informationen zur Anfrage.


2) Das Client Token gilt für einen Mitarbeiter des Unternehmens:

Die API löst einen Benachrichtigungs-Workflow aus, um eine E-Mail-Benachrichtigung an Unternehmens-Administratoren zu senden, damit diese die Anfrage genehmigen.

Antwort

{
   "success": true,
   "share_status": "Pending"
}

Als Antwort sollte deine App den*die Nutzer*in über Folgendes informieren:

  • Eine Anfrage zum Genehmigen der Teilen-Anfrage wurde per E-Mail an den Unternehmens-Administrator gesendet.
  • Eine weitere E-Mail zur Anfrage wurde an den Nutzer gesendet.

Um alle ausstehenden Vereinbarungen, die im Unternehmen des Nutzers eingeleitet wurden, aufzulisten, sende eine Anfrage an {business-id}/attempted_sharing_agreements. Setze dabei request_status auf IN_PROGRESS und requesting_business_id auf die Business Manager-ID des Nutzers. Für diese Handlung benötigst du die Berechtigungen business_creative_management und business_management.

Alle ausstehenden Vereinbarungen zum Teilen von Ordnern auflisten

Anfrage

curl -i -X GET \ https://graph.facebook.com/<API_VERSION>/<PARTNER_BUSINESS_ID>/attempted_sharing_agreements
    ?request_status=IN_PROGRESS
    &requesting_business_id=<user_business_id>
    &access_token={partner-access-token}

Alle ausstehenden Vereinbarungen zum Teilen von Ordnern mit Anfrage-ID auflisten

Wenn du die Anfrage-ID bereits kennst, kannst du alternativ dazu den Status direkt abrufen, indem du eine Anfrage an {request_id} sendest.

  • Setzt business_creative_management-Berechtigung voraus.

Anfrage

curl -i -X GET  \
    https://graph.facebook.com/<API_VERSION>/<REQUEST_ID>?fields=status

Wenn ein*e Unternehmens-Administrator*in die Anfrage genehmigt, ändert sich den Status in APPROVE. Der Ordner wird dann mit deinem Business Manager geteilt, wenn das Unternehmen des*der Nutzer*in und dein Unternehmen bereits eine Vereinbarung zum Teilen haben (das Unternehmen des*der Nutzer*in hat einen Ordner mit dir geteilt, und du hast bereits eine Anfrage zum Teilen akzeptiert). Andernfalls wird share_status auf IN_PROGRESS aktualisiert. Du kannst alle Partnerschaftsvereinbarungen mit dem Status IN_PROGRESS mit der API oder in der Business Manager-UI auflisten und akzeptieren.

7. Insights zu Bildern/Videos anzeigen (optional)

Wenn der Nutzer einen Ordner mit Berechtigung für die Aufgabe VIEW_INSIGHTS mit dir teilt, kannst du Insights zu Bildern und Videos des Unternehmens unter dem geteilten Ordner lesen. Dazu sendest du eine GET-Anfrage an den <business_asset_id>/insights-Endpunkt.

Business Creative-Insights

  • Setzt die Berechtigungen business_creative_management und business_creative_insights voraus.

Anfrage

curl -i -X GET  \
https://graph.facebook.com/<API_VERSION>/<BUSINESS_ASSET_ID>/insights
    ?breakdowns=["age","gender"]
    &fields=impressions,inline_link_clicks,age,gender,date_start,
    &time_range={"since":"2019-08-01","until":"2019-08-22"}
    &access_token={partner-access-token}"

Antwort

{
 "data": [
   {
     "impressions": 99,
     "inline_link_clicks": 1,
     "age": "18-24",
     "gender": "female",
     "date_start": "2019-08-01",
     "date_end": "2019-08-22"    },
   {
     "impressions": 198,
     "inline_link_clicks": 2,
     "age": "18-24",
     "gender": "male",
     "date_start": "2019-08-01",
     "date_end": "2019-08-22"    },
   {
     "impressions": 464,
     "inline_link_clicks": 2,
     "age": "25-34",
     "gender": "female",
     "date_start": "2019-08-01",
     "date_end": "2019-08-22"    },
 ]
}

Die Aufschlüsselung nach folgenden Elementen ist möglich:

  • gender
  • age
  • country
  • publisher_platform
  • platform_position
  • device_platform
  • ad_id
  • objective
  • optimization_goal
  • time_range (erfordert ein Datum im Format „JJJJ-MM-TT“, das für Mitternacht an diesem Tag steht)

Geteilten Ordner direkt mit Partnerschlüssel verwalten

Bei verwalteten Servicepartnern kannst du den Ordner der obersten Ebene mit einem Partner-Zugriffsschlüssel verwalten, wenn der Ordner mit den folgenden Berechtigungen mit dir geteilt wurde:

  • CREATE_CONTENT-Berechtigung für den Ordner: Damit kann deine App Unterordner erstellen und Bilder und Videos in den Ordner hochladen.
  • (Optional für Nutzer) VIEW_INSIGHTS-Berechtigung: Damit kann deine App Performance-Insights zu allen in diesem Ordner gespeicherten Werbeelementen anzeigen.

1. Berechtigungen für übergeordnete Ordner prüfen

Rufe den <business_id>/creative_folders-Endpunkt auf, um alle übergeordneten Ordner abzurufen, die das Unternehmen des Nutzers mit dir geteilt hat.

  • Setzt business_creative_management-Berechtigung voraus.

Ordner vom Unternehmen des Nutzers abrufen

Anfrage

curl -X GET \
     -F 'access_token={partner-access-token}' \  https://graph.facebook.com/<API_VERSION>/<partner_business_id>/creative_folders?filtering=[{field:"owner_business_id", operator:"EQUAL", value:"user_business_id"}]

Antwort

{ 
    "data": [
       { 
            "id": "<shared_folder_id>" 
       }
    ]
}

Zulässige Aufgaben für den Ordner abrufen

Anfrage

curl -X GET \
 -F 'access_token={partner-access-token}' \
 https://graph.facebook.com/<API_VERSION>/<folder_id>/agencies

Antwort

{
 "data": [
   {
     "id": "<partner_business_id>",
     "name": "<partner business name>",
     "permitted_tasks": [
       "VIEW_INSIGHTS",
       "VIEW_CONTENT",
       "CREATE_CONTENT",
       "MANAGE_CONTENT",
       "MANAGE_PERMISSIONS"]
   }
 ],
}
  • Die Berechtigung CREATE_CONTENT ist erforderlich, um Bilder und Videos in einen geteilten Ordner hochzuladen.
  • Die Berechtigung VIEW_INSIGHTS ist erforderlich, um Werbe-Insights zu den in einem geteilten Ordner gespeicherten Bildern und Videos abzufragen.

2. Unterordner unter übergeordnetem Ordner erstellen

Mit der Berechtigung CREATE_CONTENT für den übergeordneten Ordner kannst du einen Unterordner in einem geteilten Ordner erstellen.

  • Setzt business_creative_management-Berechtigung voraus.

Unterordner erstellen

Anfrage

curl -X POST \
    -F "name={folder_name}"
    -F "description={description}"
    -F "parent_folder_id={parent-folder-id}"
    -F 'access_token={partner-access-token}' \
 https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>/creative_folders

Antwort

{
 "id": {subfolder-id}
}

3. Bilder und Videos in Unterordner hochladen

Führe dieselben Schritte wie in Schritt 5 aus. Lade Bilder und Videos mit einem Partnerschlüssel in den Unterordner hoch.

Facebook-Asset-IDs von Bildern/Videos erfassen

Wenn deine App ein Bild oder Video in die Facebook-Asset-Bibliothek hochlädt, gibt die Facebook-API eine ID für dieses Asset zurück.

Um eine kontinuierliche Funktion zu erleichtern, muss deine App Asset-IDs für die Projekte/Arbeitsbereiche erfassen, die dieses Objekt in deiner App erzeugt haben.

Dadurch werden Bearbeitungs- und Aktualisierungsvorgänge in Zukunft optimiert. Beispiel:

  • Ein Nutzer in deiner App bearbeitet ein Asset, nachdem dieses auf Facebook veröffentlicht und in einer Werbeanzeige verwendet wurde. Der Nutzer wird zu optimierten Abläufen zum Aktualisieren oder Ausführen eines Split-Tests aufgefordert, wenn deine App die Original-Asset-ID beim Hochladen einer aktualisierten Version des Bildes/Videos sendet.
  • Ein Nutzer im Bereich für Facebook-Werbe-Insights kann die Werbeanzeige, einschließlich Bild/Video, bearbeiten. Dabei wird der Nutzer an deine App geleitet und die Asset-ID übergeben. Daraufhin kann deine App das Projekt öffnen, das dieses Asset erstellt hat, und der Nutzer kann dort fortfahren, wo er aufgehört hat.

Deep Link-URL zu Assets und zu Handlungen zum Erstellen von Anzeigen und Beiträgen

Deep Link-URL für Asset

  • Frage das Feld media_library_url des hochgeladenen Bild-/Video-Assets ab.

Anfrage

curl -X GET \
    -F 'access_token={partner-access-token}' \
https://graph.facebook.com/<API_VERSION>/<asset_id>?fields=media_library_url

Deep Link-URL zum Erstellen einer Anzeige oder eines Seitenbeitrags

  • Hänge &action=CREATE_AD oder &action=CREATE_POST an das Ende des Deep Links aus dem obigen Schritt an.

Beispiel:

https://business.facebook.com/asset_library/business_creatives/?object_id=2838437832929622&action=CREATE_AD

Nächste Schritte