Facebook Login-Integration mit der Audience Network Reporting API V2

Über Facebook Login kannst du jetzt Personen Zugriff zu Daten der Audience Network Reporting API geben. Diese Vorgehensweise ersetzt das ehemalige System mit Kopieren und Einfügen von Systemnutzer-Zugriffstoken über die Benutzeroberfläche des Monetization Managers. So kannst du auf sicherere Weise anderen deine Daten zugänglich machen, da du nicht Gefahr läufst, dass der Zugriffsschlüssel für den Monetization Manager außerhalb deines Unternehmens preisgegeben wird.

Dieses Dokument dient als Leitfaden für Direct Reporting API-Integrationen, Mobile Measurement Partner, Mediationspartner und sonstige Facebook-Partner, die im Auftrag der Publisher auf die Reporting-API-Daten zugreifen müssen.

Ich erhalte die Daten der Reporting-API über einen Drittanbieter

Wenn du dich dabei auf einen bestehenden Partner stützt (Mobile Measurement Partner oder Mediationspartner), bedarf es von deiner Seite aus keiner zusätzlichen Programmierarbeit. Stelle sicher, dass dein Partner den Facebook Login-Flow integriert. Du musst auf die Option „Mit FB anmelden“ klicken und die Eigenschaften auswählen, auf die du mit dem von dir erstellten Schlüssel Zugriff gewähren möchtest.

Wenn du ALLE Eigenschaften auswählst, ermöglicht der Schlüssel den Zugriff auf alle Eigenschaften unter dem Unternehmen, solange der*die Nutzer*in, der den Schlüssel erstellt hat, im Business Manager Zugriff auf die Eigenschaft hat.

Berechtigungen

Wenn du die Reporting API direkt nutzen möchtest, musst du zunächst eine Facebook-App erstellen und die erforderlichen Berechtigungen einholen. Deine App benötigt die Berechtigung read_audience_network_insights, um auf die Daten der Audience Network Reporting API zuzugreifen. Um diese Genehmigung für deine App zu erhalten, muss das Unternehmen Zugang zu Audience Network haben.

  • Wähle im Feld für das Unternehmenskonto dein neu erstelltes Unternehmen aus.

Nachdem du die App erstellt hast, musst du sie mit deinem Monetization Manager-Konto verknüpfen, indem du „Audience Network“ auswählst und auf den „Einrichten“-Button klickst. Du musst auswählen, welches Monetization Manager-Konto du verknüpfen möchtest.

Du kannst dies auch tun, indem du zu developers.facebook.com/apps gehst und die App auswählst, die du gerade erstellt hast.

Deine App wird dann im Audience Network eingerichtet und kann dann die Berechtigung read_audience_network_insights nutzen. Wenn du die read_audience_network_insights nicht sehen kannst, stelle sicher, dass die App Zugriff auf dein Monetization Manager Business-Konto hat.

Solltest du in der Vergangenheit read_insights permission über FB Login erhalten haben, funktioniert dies auch weiterhin. Wir empfehlen aber, zur Berechtigung read_audience_network_insights zu wechseln.

Wie du auf die Reporting API zugreifst, hängt von der Art der Integration ab, die du hast. Befolge bitte die Anweisungen, die für deinen Anwendungsfall gelten:

Direkte API-Integration ohne UI-Schnittstelle

Wenn du eine eigene (direkte) Reporting API-Integration ohne Frontend-/UI-Schnittstelle hast und diese dazu nutzt, um die Daten für dein Unternehmen abzurufen, kannst du die folgende Anleitung befolgen, um Zugriff auf die Reporting API zu erhalten.

Nutzungs-Token über den Graph API Explorer erstellen

  1. Wenn du bereits die Marketing API in deiner App einsetzt, kannst du diesen Schritt überspringen. Befolge andernfalls die Anleitung für den Erhalt der Berechtigung read_audience_network_insights.
  2. Navigiere zu Graph API Explorer
  3. Wähle deine App aus
  4. Wähle die Berechtigung „read_audience_network_insights“ aus (zu finden unter Berechtigungen > Events/Gruppenseiten) und klicke auf „Zugriffsschlüssel erstellen“.
    1. Du kannst jetzt mit diesem Zugriffsschlüssel (statt mit dem des Monetization Managers) eine kurze Zeit lang auf die Daten der Reporting-API im Audience Network zugreifen.
    2. Haftungsausschluss: Dieser Zugriffsschlüssel läuft in zwei Stunden ab. Du musst ihn mithilfe der folgenden Anleitung in einen langlebigen Zugriffsschlüssel umwandeln.

So änderst du den Zugriffsschlüssel in einen langlebigen Zugriffsschlüssel

  1. Gehe zu Access Token Debugger
  2. Gib deinen Zugriffsschlüssel ein und klicke auf „Debug“ (Debuggen)
  3. Scrolle bis zum Ende der Tabelle, die alle Zugriffsschlüssel-Informationen enthält, und klicke auf den Button „Zugriffsschlüssel verlängern“
  4. Kopiere den erstellten Zugriffsschlüssel

Du kannst jetzt mit diesem Zugriffsschlüssel auf die Daten der Reporting-API im Audience Network zugreifen.

Direkte API-Integration mit UI-Schnittstelle

Der folgende Leitfaden ist nützlich für Publisher und Partner mit einer eigenen UI-Oberfläche, auf der der Facebook Login-Button platziert werden kann. Dieser Leitfaden ist sowohl für Publisher nützlich, die auf ihre eigenen Daten zugreifen möchten, als auch für Partner, die mit deren Erlaubnis auf die Monetarisierungsdaten anderer Publisher zugreifen möchten.

Du kannst dir auch das End-to-End-Demovideo des folgenden Leitfadens ansehen, das den obigen Schritt der Erlaubniserteilung enthält:

Etwas ist schiefgelaufen
Leider kann dieses Video nicht richtig abgespielt werden.
  • Wähle im Portal für Entwickler*innen deine neu erstellte Business-App aus den vorherigen Schritten aus.
  • Füge zu dieser App ein neues „Facebook Login“-Produkt hinzu.
  • Wähle die Option „Web“ aus und folge den Integrationsschritten.
  • Füge die URL der Website ein, auf der du dein Facebook Login-Erlebnis zeigen willst. Achte darauf, dass diese das HTTPS-Protokoll unterstützt.
  • Am Ende der Integrationsschritte wird dir ein Beispielcode angezeigt, mit dem du Facebook Login auf deiner Seite integrieren kannst. Du kannst diesen Code kopieren. Verwende dabei allerdings die neu abgerufene read_audience_network_insights-Berechtigung anstelle der vorgeschlagenen public_profile,email-Berechtigungen. Dein Button-Code sollte mit der aktualisierten Berechtigung folgendermaßen aussehen:
<fb:login-button 
  scope="read_audience_network_insights"
  onlogin="checkLoginState();">
</fb:login-button>
  • Stelle sicher, dass das JavaScript SDK auf der Seite der Produkteinstellungen für Facebook Login für deine App aktiviert ist.
  • Jetzt können Nutzer*innen den Facebook Login-Flow auf deiner Seite durchlaufen, um Zugriffsschlüssel zu generieren.
  • Der Zugriffsschlüssel wird infolge der gesendeten Anfrage, die die JavaScript-Methode statusChangeCallback aus den vorherigen Schritten durchläuft, zurückgegeben.
  • Standardmäßig läuft dieser Zugriffsschlüssel in etwa zwei Stunden ab.
  • Entwickler*innen können beantragen, dass die Gültigkeit dieser Zugriffsschlüssel ausgeweitet wird, indem man sie in langlebige Zugriffsschlüssel ohne weitere Nutzungs-Interaktionen ändert.
    • Langlebige Zugriffsschlüssel werden einmal am Tag aktualisiert, wenn eine Reporting API-Anfrage an die Server von Facebook gesendet wird. Wenn keine Anfragen getätigt werden, läuft der Schlüssel nach rund 60 Tagen ab und die Person muss einen neuen Schlüssel generieren.
  • Beachte, dass die Daten, die über diesen Schlüssel verfügbar sind, stark davon abhängen, wer diesen Facebook Login-Flow durchläuft und welche Daten diese Person teilen möchte. Wenn also der*die Mitarbeiter*in des Unternehmens diesen Flow durchläuft, hat der resultierende Zugriffsschlüssel die gleichen Berechtigungen wie diese*r Mitarbeiter*in.

Problembehebung

FehlermeldungBedeutungMaßnahme/Lösung

„Reading insights of a Page, business, app, domain or event source group not owned by the querying user or application.“ (Es werden Insights einer Seite, App, Domain, Event-Quellengruppe oder eines Unternehmens ausgelesen, die nicht dem*der Nutzer*in oder der App gehören, der*die die Anfrage gestellt hat.)

Für den Facebook Login-Schlüssel heißt das, dass entweder die App, die den Schlüssel herausgibt, keine ausreichenden Berechtigungen hat (read_audience_network_insights) oder der*die Nutzer*in selbst nicht die Berechtigung besitzt, bestimmte Eigenschaften einzusehen. Das kann folgende Ursachen haben: * Der*die Nutzer*in, der*die den Schlüssel generiert hat, hat keinen Zugriff auf den Business Manager. * Der*die Nutzer*n, der*die den Schlüssel generiert hat, kann nicht auf alle angefragten Eigenschaften zugreifen.

Der Business-Admin muss dem*der Nutzer*in, der*die den Schlüssel generieren möchte oder generiert hat, Zugriff auf alle Eigenschaften gewähren.

Missing or Empty data (Fehlende oder leere Daten)

Das bedeutet normalerweise, dass alle oder einige Daten anhand unserer Datenschutz-Aggregation gefiltert wurden. Dies kann auch anhand von MoMa-Daten validiert werden.

Überprüfe, ob ein omitted_results-Array vorhanden ist. Das heißt, dass die Daten aggregiert werden. Versuche es mit einer größeren Anfrage. Weitere Informationen findest du im Abschnitt zur Aggregation.

read_audience_network_insights not visible for the Token (für Schlüssel nicht sichtbar)

Die App, die zum Generieren des Schlüssels erstellt wurde, wurde nicht als Typ „Business“ erstellt und die App wurde mit deinem Audience Network Monetization Manager verknüpft.

Sorge dafür, dass du die App zum Generieren eines Schlüssels als „Business“-App erstellst. Versuche, eine neue App zu erstellen und dabei die Anweisungen im Abschnitt „Berechtigungen“ zu befolgen. Gehe zu developers.facebook.com/apps und wähle die App aus, für die du read_audience_network_insights nicht sehen kannst, und wähle „Audience Network“ aus und klicke auf den „Einrichten-Button“.

Error validating access token: Session has expired on ...

Der Schlüssel ist abgelaufen.

Sorge dafür, dass der Schlüssel in einen langlebigen Schlüssel umgewandelt wird. Befolge die Anweisungen im Abschnitt „So änderst du den Zugriffsschlüssel in einen langlebigen Zugriffsschlüssel“. Langlebige Zugriffsschlüssel werden einmal pro Tag aktualisiert, wenn eine Reporting API-Anfrage an die Facebook-Server getätigt wird. Wenn keine Anfragen getätigt werden, läuft der Schlüssel nach rund 60 Tagen ab und die Person muss einen neuen Schlüssel generieren.

Two Apps with the same name are showing (Es werden zwei Apps mit demselben Namen angezeigt)

Prüfe, ob eine App read_audience_network_insights-Berechtigungen besitzt.

Verwende die App mit den richtigen read_audience_network_insights-Berechtigungen.

(#200) The way to access reporting API v2.0 has changed. You now need to implement Facebook Login for your app to access this API. (Die Methode für den Zugriff auf die Reporting API v2.0 hat sich geändert. Du musst nun Facebook Login implementieren, damit deine App auf diese API zugreifen kann.)

Du verwendest die Anmeldedaten für den Zugriff auf die API nicht auf die neue Art und Weise.

Stelle sicher, dass du von Grund auf eine neue App (die nur zum Erstellen von Schlüsseln verwendet wird) vom Typ „Business“ erstellst.