Mappatura degli utenti su app e pagine

Se desideri condividere lo stesso ID utente assegnato tra le versioni di test, sviluppo, staging e controllo qualità dell'app, utilizza le app test.

Facebook assegna ID utente per singola app per le persone che accedono per la prima volta a un'istanza di un'app e per le persone che accedono con Limited Login e ID utente per singola pagina per le persone che utilizzano per la prima volta un bot di Messenger. Pertanto, la stessa persona potrebbe avere ID differenti per app e bot.

Un'azienda può utilizzare diverse app o bot di Facebook, come comunemente avviene, ad esempio, nella progettazione di giochi per supportare casi d'uso quali la cross-promotion o il rilevamento di frodi, oppure in bot impiegati per comunicare con gli utenti. In questi casi, potrebbe essere necessario mappare gli ID per app e bot di una stessa persona.

Esistono tre metodi con cui è possibile mappare lo stesso utente su più app:

Prima di poter utilizzare uno di questi meccanismi, devi prima informare Facebook che le tue app sono possedute e gestite dalla stessa entità aziendale. A tale scopo, devi usare Business Manager di Facebook per eseguire una delle seguenti operazioni:

Campo token_for_business sul nodo Utente

Dopo aver associato un'app a un Business Manager, puoi richiedere il campo token_for_business sul nodo User, utilizzando l'ID per singola app ottenuto da Limited Login o dal primo accesso a un'istanza di un'app. Tale chiamata restituisce a questa persona una stringa che è la stessa in tutte le app gestite dallo stesso Business Manager.

GET /me?fields=token_for_business

produrrebbe:

{
  "id": "1234567890"
  "token_for_business": "weg23ro87gfewblwjef"
}

Note sull'utilizzo:

  • La persona interrogata deve aver effettuato l'accesso a questa app.
  • Questo campo può essere chiamato con un token d'accesso dell'app o un token d'accesso dell'utente. Se si utilizza un token utente, la persona interrogata deve essere la stessa per la quale è stato generato il token.
  • Se utilizzi un ID per singola app ottenuto da Limited Login, devi utilizzare l'ID app della tua app per effettuare la chiamata perché non disponi di un token utente valido per le chiamate all'API Graph. Tieni presente che le misure di sicurezza di Limited Login non sono supportate in questo contesto.
  • Se cambia l'azienda proprietaria, cambia anche il valore di token_for_business.
  • Se richiedi il campo token_for_business e l'app non è associata a un Business Manager, la chiamata restituisce un errore.
  • Il valore restituito da token_for_business è un token, non un ID, pertanto non può essere utilizzato direttamente con l'API Graph per accedere alle informazioni di una persona. Devi archiviare l'ID nel tuo database e utilizzarlo per chiamare l'API Graph e ottenere le informazioni di quella persona.

Per comodità, il campo token_for_business è disponibile in tutte le versioni API.

Proprietà token_for_business nell'oggetto signed_request Canvas

Per semplificare l'operazione di mappatura di un utente su più app realizzata da app con presenza Canvas, se l'app è associata a un Business Manager e l'utente ha effettuato l'accesso, un campo token_for_business viene aggiunto e trasmesso all'app tramite l'oggetto trasmesso alle app Canvas al momento del caricamentosigned_request. Ad esempio:

{
  "algorithm": "HMAC-SHA256",
  "expires": 1414263600,
  "issued_at": 1414257389,
  "oauth_token": "CAAGEkq9GMZAkBAFnvvQ3M6msZBKITLa1gVZBVdnLTdJue2QeV6fMKRXn4G6fcEZB5ZAJyg3z6HdaKOJCCMJ1l9YFWmN4hq6nNnx77f9O7SYhsnPcJ6iH79xjFwqhrALgieDp7GiziMy5Y3Mol6RzHvCM5ceqQe9ZAijvrWZB5hEIwphbMQKEwZA4ZBozXP3NJgEZA3nZCMTTtvleWpxfmqIqO5XwxneCZBsZC4",
  "token_for_business": "AbwoGqummPbF3zp_",
  "user_id": "10154418713995634"
}

Il valore del campo token_for_business corrisponderà al valore che si avrebbe se venisse interrogato direttamente sul nodo User, ad es. tramite /me?fields=token_for_business. Segue anche le stesse regole, vale a dire che se l'azienda proprietaria cambia, cambia anche il valore di token_for_business.

Se l'app non è associata a un Business Manager o l'utente non ha effettuato l'accesso all'app, la proprietà token_for_business non sarà presente nell'oggetto signed_request.

Segmento ids_for_business sul nodo Utente

Ottieni ID aziendali mappati chiamando il segmento ids_for_business sul nodo User. La risposta corrisponde a un array di oggetti, ognuno dei quali rappresenta un'app associata alla stessa azienda dell'app per le chiamate e a cui l'utente ha effettuato l'accesso.

GET /me/ids_for_business

Esempio di risposta:

{
  "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"
      }
    }
  ]
}

Affinché i dati vengano restituiti dall'API, l'utente deve aver effettuato l'accesso a una o più app associate alla stessa azienda dell'app da cui effettui la chiamata all'API. Esempio: se una persona ha effettuato l'accesso a 3 delle 5 app associate alla stessa azienda, l'API restituirà 3 oggetti.

FAQ

Devo utilizzare l'API Business Mapping?

No, l'API Business Mapping è utile solo per le aziende che gestiscono più app Facebook e che devono mappare i diversi ID degli stessi utenti tra di loro. Se disponi di un'app principale è improbabile che tu debba utilizzare l'API Business Mapping, quindi non è necessario configurare un'azienda o associare le tue app all'azienda.

Che cos'è Business Manager?

Business Manager è un modo per aiutare le aziende e le agenzie a gestire le proprie pagine Facebook, gli account pubblicitari, le app e i metodi di pagamento in un unico luogo. Scopri di più su Business Manager.

Non credo di aver bisogno di utilizzare l'API Business Mapping, ma devo comunque associare le mie app a un'azienda?

Se non hai bisogno di utilizzare l'API Business Mapping, ti sconsigliamo di configurare un'azienda per il momento. Poiché un'azienda deve essere collegata alla Pagina Facebook aziendale principale, la persona più idonea a configurare l'azienda su Facebook è la persona che di solito gestisce gli account pubblicitari di Facebook e le autorizzazioni per la Pagina aziendale. Se l'azienda è già stata configurata in Business Manager, puoi associare liberamente le app a questa azienda.

Posso associare la mia app a più aziende?

No, un'app può essere associata a una sola azienda alla volta.

Posso trasferire un'app a un'altra azienda?

Sì, innanzitutto, devi rimuovere l'app dall'azienda a cui è attualmente associata. Puoi eseguire questa operazione all'interno di Business Manager. Accedi alla tab App nelle impostazioni aziendali, seleziona l'app e clicca su "Rimuovi". Adesso è possibile associare l'app a una nuova azienda.