اعتبارًا من 8 يونيو 2021، سيتم تقييد الوصول إلى نقاط النهاية هذه. ستتلقى التطبيقات التي لا تتوفر لديها صلاحية وصول خطأً.
يمكن لمدير الأعمال طلب الوصول إلى حساب إعلاني أو صفحة مملوكة لمدير أعمال آخر. ويجب تحديد المهام التي يريدون تعيينها في الطلب.
يتطلب تعيين نشاط تجاري لصفحة توفير رمز الصفحة؛ على سبيل المثال:
curl -F "business=<BUSINESS_ID>" -F "permitted_tasks=['MODERATE', 'ADVERTISE', 'ANALYZE']" "https://graph.facebook.com/<API_VERSION>/<PAGE_ID>/agencies?access_token=<ACCESS_TOKEN>"
لطلب وصول AGENCY
، يجب توفير permitted_tasks
في طلبك. لا يمكنك سوى إرسال طلب للأصول إلى مدير الأعمال الذي تنوي الموافقة عليه والذي يجب أن يعرف نشاطك التجاري بالفعل.
على سبيل المثال، فإن النشاط التجاري الذي يحتاج إلى الوصول إلى adaccount_id
ويحتاج إلى أن يكون قادرًا على تعيين الموظفين كـ ['ADVERTISE', 'ANALYZE']
، سيقوم بتنفيذ استدعاء POST
هذا:
curl \ -F "adaccount_id=act_<AD_ACCOUNT_ID>" \ -F "permitted_tasks=['ADVERTISE','ANALYZE']" \ "https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>/client_ad_accounts?access_token=<ACCESS_TOKEN>"
ينطبق الأمر نفسه بالنسبة للصفحة، إذا كنت تريد تعيين مهام ['ADVERTISE', 'ANALYZE']
لصفحة لا يملكها شخص ما:
curl \ -F "page_id=<PAGE_ID>" \ -F "permitted_tasks=['ADVERTISE','ANALYZE']" \ "https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>/client_pages?access_token=<ACCESS_TOKEN>"
ترسل هذه الاستدعاءات إشعارًا إلى المسؤولين المعنيين في الحساب الإعلاني أو الصفحة، والذي يطلب قبول طلب الوصول. سيرى المسؤولون المعنيون الإشعار في مدير الإعلانات أو مدير الصفحات. يمكنهم أيضًا قبول الطلب في واجهة المستخدم. إذا كنت تريد رؤية الطلبات المعلقة عبر API، فأرسل طلب GET
وتحقق من PENDING
في الحقل access_status
.
curl "https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>/clients?access_token=<ACCESS_TOKEN>"
الاستجابة:
"data": [ { "name": "Random Page", "page_permissions": [ { "id": "1900952844321", "permitted_tasks": [ 'MANAGE', 'CREATE_CONTENT', 'MODERATE', 'ADVERTISE', 'ANALYZE', ], "access_status": "CLIENT_RESPONSE_PENDING", "access_requested_time": "2014-01-07T23:26:09+0000", "access_updated_time": "2014-01-07T23:26:09+0000" } ], "id": "190137931178903" },
يُعرف هذا أيضًا باسم إضافة وكالة إلى الكائن.
لقبول طلب وصول إلى كائن تملكه من مدير أعمال آخر، أو لمنح إمكانية الوصول إلى أحد الكائنات التي تملكها لمدير أعمال آخر، يجب تحديد النشاط التجاري وقائمة المهام التي ينبغي أن تتوفر لديهم إمكانية الوصول إليها.
إذا كان رمز الوصول المستخدم لإجراء استدعاء API ينتمي إلى مستخدم أو مستخدم نظام لديه صلاحية الوصول إلى الأصل المطلوب عبر نشاط تجاري، فلا يمكن منح إمكانية الوصول إلى الأصل إلا إذا كان هذا النشاط التجاري لديه دور OWNER
للأصل. لا يمكنك منح إمكانية الوصول إلى الأصول التي يتوفر لديك دور AGENCY
فيها فقط.
على سبيل المثال، لمنح شخص ما صلاحية الوصول إلى حساب إعلاني باستخدام مهام [
ADVERTISE,
ANALYZE]
، استخدم طلب POST
هذا:
curl \ -F "business=<BUSINESS_ID>" \ -F "permitted_tasks=['ADVERTISE', 'ANALYZE']" \ "https://graph.facebook.com/<API_VERSION>/act_<AD_ACCOUNT_ID>/agencies?access_token=<ACCESS_TOKEN>"
لمنح النشاط التجاري إمكانية الوصول إلى صفحتك من خلال المهام [ADVERTISE]
و[MODERATE]
و[ANALYZE]
:
curl \ -F "business=<BUSINESS_ID>" \ -F "permitted_tasks=['MODERATE', 'ADVERTISE', 'ANALYZE']" \ "https://graph.facebook.com/<API_VERSION>/<PAGE_ID>/agencies?access_token=<ACCESS_TOKEN>"
في حالة منح إمكانية الوصول لحساب إعلاني، يلزم في بعض الأحيان إجراء مراجعة من جانب مسؤول نشاط تجاري آخر كإجراء أمني. يمكن الموافقة على هذا المراجعة عن طريق الانتقال إلى https://business.facebook.com/settings/requests/admin_reviews . في هذه الحالة، ستحتوي الاستجابة على حقل إضافي يشير إلى أن المراجعة مطلوبة.
{ "success": true, "requires_admin_approval": true }
يمكن لمسؤولي الصفحة أيضًا قبول طلبات وصول الوكالة في علامات التبويب Manage Admin Roles
ضمن إعدادات الصفحة على facebook.com.
يُعرف هذا أيضًا باسم إزالة وكالة من نشاطك التجاري. لإزالة إمكانية وصول مديري الأعمال من حسابك الإعلاني:
curl \ -X DELETE \ -F "business=<BUSINESS_ID>" \ "https://graph.facebook.com/<API_VERSION>/act_<AD_ACCOUNT_ID>/agencies?access_token=<ACCESS_TOKEN>"
وبالمثل، لإزالة إمكانية وصول نشاط تجاري من صفحتك:
curl \ -X DELETE \ -F "business=<BUSINESS_ID>" \ "https://graph.facebook.com/<API_VERSION>/<PAGE_ID>/agencies?access_token=<ACCESS_TOKEN>"
لعرض جميع الأنشطة التجارية التي يمكنها الوصول إلى حسابك الإعلاني من خلال استدعاء GET
:
curl "https://graph.facebook.com/<API_VERSION>/act_<AD_ACCOUNT_ID>/agencies?access_token=<ACCESS_TOKEN>"
لعرض جميع الأنشطة التجارية التي يمكنها الوصول إلى صفحتك:
curl "https://graph.facebook.com/<API_VERSION>/<PAGE_ID>/agencies?access_token=<ACCESS_TOKEN>"
لعرض جميع الأنشطة التجارية التي يمكنها الوصول إلى أصول نشاطك التجاري:
curl "https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>/agencies?access_token=<ACCESS_TOKEN>"
لعرض جميع الأنشطة التجارية التي منحتك إمكانية الوصول إلى واحد أو أكثر من الحسابات الإعلانية أو الصفحات، استخدم استدعاء GET
هذا:
curl "https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>/clients?access_token=<ACCESS_TOKEN>"
These APIs allow you to manage the relationship between your Ad Accounts and the businesses for which you are acting on behalf of (OBO). Creating these relationships allows you to access custom audiences for the business and use of the audience overlap tool.
To view the details of an OBO request, make this GET
request:
curl -G \ -F "access_token=<ACCESS_TOKEN>" \ "https://graph.facebook.com/<API_VERSION>/<OBO_REQUEST_ID>?fields=id,receiving_business,requesting_business,status,business_owned_object"
The response contains the details of the OBO request and looks like this:
{ "id": "1111111111", "receiving_business": { "id": "2222222222", "name": "Example Business Name" }, "requesting_business": { "id": "3333333333", "name": "Example Business Name" }, "status": "IN_PROGRESS", "business_owned_object": "1111111111" }
To cancel a pending request to act OBO another business, make this DELETE
request:
curl \ -X DELETE \ -F "access_token=<ACCESS_TOKEN>" \ "https://graph.facebook.com/<API_VERSION>/<OBO_REQUEST_ID>"
The response, indicating success or failure, looks like this:
{ "success": "true" }
To view the status of requests to act OBO another business for an Ad account, make this GET
request:
curl -G \ -F "access_token=<ACCESS_TOKEN>" \ "https://graph.facebook.com/<API_VERSION>/act_<AD_ACCOUNT_ID>/onbehalf_requests? fields=id,status,receiving_business,requesting_business&status=<STATUS>"
The status
parameter in the request must be APPROVE
, DECLINE
, or IN_PROGRESS
.
The response contains an array with the OBO request objects for an Ad account matching the requested status.
Example response:
{ "data": [ { "id": "1111111111", "status": "IN_PROGRESS", "receiving_business": { "id": "2222222222", "name": "Example Business Name" }, "requesting_business": { "id": "3333333333", "name": "Example Business Name" } } ] }
To view requests of IN_PROGRESS
OBO requests sent to your business, make this GET
request:
curl -G \ -F "access_token=<ACCESS_TOKEN>" \ "https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>/received_inprogress_onbehalf_requests"
The response contains the IN_PROGRESS
OBO request IDs and looks like this:
{ "data": [ { "id": "1111111111" }, { "id": "2222222222" }, { "id": "3333333333" } ] }
To view OBO requests that were sent by your business that are still in the IN_PROGRESS
state, make this GET
request:
curl -G \ -F "access_token=<ACCESS_TOKEN>" \ "https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>/sent_inprogress_onbehalf_requests"
The response contains the IN_PROGRESS
OBO request IDs and looks like this:
{ "data": [ { "id": "1111111111" }, { "id": "2222222222" }, { "id": "3333333333" } ] }