Grâce à l’API Business On Behalf Of, un partenaire peut :
Un·e utilisateur·ice système est défini·e comme une personne qui peut effectuer des tâches programmatiques répétitives, telles que la mise à jour d’un catalogue produits, l’envoi d’évènements serveur à serveur, la mise à jour d’audiences personnalisées, etc.
Dans ce scénario, l’utilisateur·ice système dispose d’un accès employé·e et ne peut accéder qu’aux éléments affectés (au moment de la création) en utilisant le token d’accès de l’utilisateur·ice admin.
Avantage d’utiliser un·e utilisateur·ice système plutôt qu’un token d’accès propre à l’utilisateur·ice : les utilisateur·ices peuvent quitter une entreprise, mais les tokens d’accès des utilisateur·ices système n’expirent pas. Dans cette approche, le client ou la cliente continue d’être propriétaire de son entreprise et permet au partenaire d’accéder à son Business Manager et à ses éléments via un·e utilisateur·ice système. Un client ou une cliente a la possibilité d’accéder à son Business Manager et de révoquer l’utilisateur·ice système ou de supprimer l’accès de certains actifs à un partenaire par programmation.
Avant de commencer, nous vous recommandons d’examiner les exigences et informations suivantes :
Si votre client·e a créé un compte marchand via le Gestionnaire des ventes, il ou elle est déjà connecté·e à son Business Manager. Vous pouvez trouver son ID Business Manager en suivant cette instruction.
S’il n’y a pas de Business Manager pour la clientèle, vous devez en créer un avant de continuer. Pour obtenir des instructions, voir API Business Manager.
business_management
PARTNER_BM_ID
: ID du Business Manager du partenaire qui doit être propriétaire de l’application. CLIENT_BM_ID
: ID du Business Manager du client ou de la cliente propriétaire de la Page Facebook connectée au compte marchand du client ou de la cliente.USERS_ACCESS_TOKEN
: token d’accès d’un admin du Business Manager du client ou de la cliente, créé avec les autorisations business_manage
en utilisant l’application appartenant au Business Manager du partenaire. Ce token est généré via Facebook Login.PARTNER_BM_ADMIN_SYSTEM_USER_ACCESS_TOKEN
: token d’accès de l’utilisateur·ice système admin dans le Business Manager du partenaire pour l’application.CLIENT_BM_SU_ACCESS_TOKEN
: token d’accès de l’utilisateur·ice système sous le Business Manager du client ou de la cliente.CLIENT_BM_SU_PAGE_ACCESS_TOKEN
: token d’accès page de l’utilisateur·ice système sous le Business Manager du client ou de la cliente.Créez la relation On Behalf Of entre le partenaire et le Business Manager du client ou de la cliente.
Cela crée un avantage relationnel entre le Business Manager du partenaire et celui du client ou de la cliente. Cela permet au partenaire de créer un SU via l’API à l’étape suivante.
Token d’accès utilisé :USERS_ACCESS_TOKEN
curl -i -X POST \
"https://graph.facebook.com/v21.0
/<PARTNER_BM_ID>/managed_businesses?existing_client_business_id=<CLIENT_BM_ID>&access_token=<USERS_ACCESS_TOKEN>"
Récupérez le token d’accès de l’utilisateur·ice système sous le Business Manager du client ou de la cliente. Cela installe l’application dans le Business Manager du client ou de la cliente et crée un·e utilisateur·ice système. Par défaut, le nom de l’utilisateur·ice système est « {Client_Business_Manager_Name} SYSTEM USER ». Un·e client·e pourra voir l’application des partenaires dans son Business Manager en tant qu’élément partagé. (Il ou elle n’aura aucun accès à l’application, sauf en tant qu’utilisateur·ice test.)
Dans le paramètre scope
, vous devez inclure toutes les autorisations dont vous avez besoin pour que l’utilisateur·ice système ait accès aux points de terminaison de l’API pertinents. Consultez les références individuelles de l’API pour savoir quelles autorisations sont nécessaires pour y accéder.
Token d’accès utilisé :PARTNER_BM_ADMIN_SYSTEM_USER_ACCESS_TOKEN
. Ce token d’accès doit avoir l’autorisation business_management
et toutes les autorisations incluses dans les paramètres scope
ci-dessus.
curl -i -X POST \
"https://graph.facebook.com/v21.0
/<CLIENT_BM_ID>/access_token?scope=ads_management,pages_read_engagement&app_id=<APP_ID>&access_token=<PARTNER_BM_ADMIN_SYSTEM_USER_ACCESS_TOKEN>"
La réponse contient le token pour l’utilisateur·ice système qui est lié·e aux relations OBO. Vous n’avez pas besoin de créer ou d’utiliser un·e autre utilisateur·ice système pour l’intégration commerciale.
Obtenez l’ID de l’utilisateur·ice système.
Token d’accès utilisé :CLIENT_BM_SU_ACCESS_TOKEN
curl -i -X GET \
"https://graph.facebook.com/v21.0
/me?access_token=<CLIENT_BM_SU_ACCESS_TOKEN>"
Affectez des éléments (page et catalogue) à l’utilisateur·ice système dans le Business Manager du client ou de la cliente.
Token d’accès utilisé :USERS_ACCESS_TOKEN
curl -i -X POST \
"https://graph.facebook.com/v21.0
/<ASSET_ID>/assigned_users?user=<SYSTEM_USER_ID>&tasks=MANAGE&access_token=<USERS_ACCESS_TOKEN>"
Stockez ce CLIENT_BM_SU_ACCESS_TOKEN
dans une base de données sécurisée et utilisez-le pour accéder aux API qui nécessitent un token d’accès utilisateur·ice, comme Gestion du catalogue.
Générez un token d’accès de Page avec CLIENT_BM_SU_ACCESS_TOKEN
en appelant :
curl -i -X GET \
"https://graph.facebook.com/v21.0
/me/accounts?access_token=<CLIENT_BM_SU_ACCESS_TOKEN>"
Cette requête énumère toutes les Pages gérées par l’utilisateur·ice système, y compris le access_token
correspondant. Exemple de réponse :
{ "data": [ { "access_token": "<access token sanitized>", "category": "Retail Company", "category_list": [ { "id": "2239", "name": "Retail Company" } ], "name": "Test_Shop_Page", "id": "<content sanitized>", "tasks": [ "ANALYZE", "ADVERTISE", "MODERATE", "CREATE_CONTENT", "MANAGE" ] } ], "paging": { "cursors": { "before": "<content sanitized>", "after": "<content sanitized>" } } }
Copiez le access_token
correspondant à la page liée au compte marchand du client ou de la cliente et stockez-le en toute sécurité. Vous l’utiliserez pour accéder aux API qui nécessitent un token d’accès de Page au nom du compte marchand, comme Gestion des commandes et Rapports financiers.
Comment puis-je annuler la relation On Behalf Of pour supprimer l’utilisateur·ice système sous le Business Manager du client ou de la cliente qui m’a été affecté ?
curl -i -X DELETE \
"https://graph.facebook.com/v21.0
/<PARTNER_BM_ID>/managed_businesses?existing_client_business_id=<CLIENT_BM_ID>&access_token=<USERS_ACCESS_TOKEN>"
Si le client ou la cliente veut supprimer la relation et l’utilisateur·ice système du partenaire, il ou elle peut le faire dans la vue de l’application du Business Manager.