Wenn du bei der Test-, Entwicklungs-, Staging- und QA-Version deiner App jeweils dieselbe spezifische Nutzer-ID verwenden möchtest, sind Test-Apps die richtige Wahl.
Facebook gibt App-spezifische Nutzer-IDs für Personen aus, die sich zuerst bei einer Instanz einer App anmelden, und für Personen, die sich mit Limited Login anmelden. Für Personen, die zuerst einen Messenger-Bot verwenden, gibt Facebook seitenspezifische Nutzer-IDs aus. Per Definition bedeutet das, dass eine Person bei diesen Apps und Bots unterschiedliche IDs hat.
Ein Unternehmen kann mehrere Facebook-Apps oder -Bots betreiben. Das ist eine gängige Methode in Game-Studios, beispielsweise zur Unterstützung von Anwendungsfällen wie Cross-Promotion oder Betrugserkennung, und in Bots, die zur Kommunikation mit Nutzern eingesetzt werden. In diesen Fällen musst du die IDs einer einzelnen Person zwischen Apps und Bots zuordnen.
Für die Zuordnung eines Nutzers in mehreren Apps gibt es drei Methoden:
Bevor du diese Funktionen nutzen kannst, musst du Facebook mitteilen, dass deine Apps zu demselben Unternehmen gehören und von demselben Unternehmen betrieben werden. Dazu musst du im Facebook Business Manager:
token_for_business
auf dem Nutzer-NodeSobald eine App mit einem Business Manager verknüpft wurde, kannst du das Feld token_for_business
auf dem Node User
anfordern. Verwende dazu die App-spezifische ID, die du von Limited Login oder der ersten Anmeldung bei einer Instanz einer App erhalten hast. Durch diesen Aufruf wird ein String zurückgegeben, der für diese Person in allen von diesem Business Manager verwalteten Apps identisch ist.
GET /me?fields=token_for_business
ergibt Folgendes:
{ "id": "1234567890" "token_for_business": "weg23ro87gfewblwjef" }
Anwendungshinweise:
token_for_business
.token_for_business
anforderst und die App nicht mit einem Business Manager verknüpft ist, führt der Aufruf zu einem Fehler.token_for_business
zurückgegebene Wert ist ein Schlüssel, keine ID. Der Wert kann nicht direkt mit der Graph API für den Zugriff auf die Informationen einer Person verwendet werden. Du solltest die ID dennoch in der Datenbank speichern und diese bei dem Aufruf verwenden, mit dem du die Informationen zu dieser Person von der Graph API abrufst.Praktischerweise ist das Feld token_for_business
in allen API-Versionen verfügbar.
token_for_business
im Canvas-Objekt signed_request
Damit Apps mit einem Canvas auf einfache Weise einen Nutzer über mehrere Apps hinweg zuordnen können (insofern die App mit einem Business Manager verknüpft ist und der Nutzer sich bei dieser App angemeldet hat), wird das Feld token_for_business
hinzugefügt und über signed_request
beim Laden an Canvas-Apps übergeben. Beispiel:
{ "algorithm": "HMAC-SHA256", "expires": 1414263600, "issued_at": 1414257389, "oauth_token": "CAAGEkq9GMZAkBAFnvvQ3M6msZBKITLa1gVZBVdnLTdJue2QeV6fMKRXn4G6fcEZB5ZAJyg3z6HdaKOJCCMJ1l9YFWmN4hq6nNnx77f9O7SYhsnPcJ6iH79xjFwqhrALgieDp7GiziMy5Y3Mol6RzHvCM5ceqQe9ZAijvrWZB5hEIwphbMQKEwZA4ZBozXP3NJgEZA3nZCMTTtvleWpxfmqIqO5XwxneCZBsZC4", "token_for_business": "AbwoGqummPbF3zp_", "user_id": "10154418713995634" }
Der Wert des Feldes token_for_business
ist identisch mit dem Wert, der bei direkter Abfrage des Nodes User
(d. h. über /me?fields=token_for_business
) ermittelt wird. Dabei gelten auch dieselben Regeln. Wenn sich das Unternehmen also ändert, ändert sich auch der Wert von token_for_business
.
Wenn die App nicht mit einem Business Manager verknüpft oder der Nutzer nicht bei der App angemeldet ist, ist die Eigenschaft token_for_business
nicht im Objekt signed_request
vorhanden.
ids_for_business
auf dem Nutzer-NodeZugeordnete Unternehmens-IDs kannst du über die Edge ids_for_business
auf dem Node User
abrufen. Als Antwort wird ein Array von Objekten angezeigt, die jeweils für eine App stehen, die mit demselben Unternehmen verknüpft ist wie die aufrufende App, bei der sich der Nutzer ebenfalls angemeldet hat.
GET /me/ids_for_business
Beispielantwort:
{ "data": [ { "id": "10153949089790582", "app": { "name": "Business's App 1", "namespace": "business_app_1", "id": "647733625268125" } }, { "id": "605665581", "app": { "name": "Business's App 2", "namespace": "business_app_2", "id": "370612223054807" } }, { "id": "10154053730190582", "app": { "name": "Business's App 3", "namespace": "business_app_3", "id": "194890427204075" } } ] }
Damit die Daten von der API zurückgegeben werden, muss sich der Nutzer bei einer oder mehreren Apps angemeldet haben, die mit demselben Unternehmen verknüpft sind wie die App, von der aus du den API-Aufruf durchführst. Beispiel: Wenn eine Person an 3 von 5 mit einem Unternehmen verknüpften Apps angemeldet ist, gibt die API 3 Objekte zurück.
Nein. Die Business Mapping API ist nur für Unternehmen hilfreich, die mehrere Facebook-Apps betreiben und die IDs eines einzelnen Nutzers über diese Apps hinweg zuordnen müssen. Wenn du eine primäre App hast, wirst du die Business Mapping API wahrscheinlich nicht benötigen und auch kein Unternehmen einrichten oder deine Apps mit dem Unternehmen verknüpfen.
Mit dem Business Manager können Unternehmen und Agenturen ihre Facebook-Seiten, Werbekonten, Apps und Zahlungsmethoden von einem zentralen Punkt aus verwalten. Hier erfährst du mehr über den Business Manager.
Wenn du die Business Mapping API nicht verwenden möchtest, solltest du zum jetzigen Zeitpunkt kein Unternehmen einrichten. Da ein Unternehmen mit der primären Facebook-Seite für dein Unternehmen verknüpft werden muss, kann die Person das Unternehmen am besten in Facebook einrichten, die in der Regel die Facebook-Werbekonten und Seitenberechtigungen für dein Unternehmen verwaltet. Wenn dein Unternehmen bereits in Business Manager eingerichtet wurde, kannst du Apps mit diesem Unternehmen verknüpfen.
Nein. Eine App kann nicht mit mehreren Unternehmen gleichzeitig verknüpft werden.
Ja. Zuerst musst du die App aus dem Unternehmen entfernen, mit dem es zurzeit verknüpft ist. Das kannst du in Business Manager erledigen. Wähle dafür einfach auf der Registerkarte „Anwendungen“ in deinen Unternehmenseinstellungen die App aus und klicke auf „Entfernen“. Anschließend kannst du die App mit einem neuen Unternehmen verknüpfen.