1

Is it possible to programmatically request business partner with access assets business owns. Facebook business-manager-api describes best practices to work with business-manager-api. Would be very handly if our app can request partnership to client or agencies business managers programmatically.

Update So after digging documentation, playing with Facebook Graph API and asking on official Q/A groups we came to conclusion, that at this moment Facebook API doesn't provide any endpoint to request business partnership. So we refactor our flow and now we will request access to business's ad accounts. I will accept answer as correct, cause at this moment this is the only possible solution

2 Answers 2

1

The Business Manager API provide a functionality to request access to assets. This is documented in the Business-to-Business Functions of the Assets section.

For example,

Business Manager may request access to an ad account or a page owned by another business manager. They must specify the roles that they want need to be able to assign in the request.

To request AGENCY access, you must provide permitted_roles in your request. You can only send request to assets to business manager that you intend to approve and that they must already know your business.

For example, a business that needs access to adaccount_id and needs to be able to assign its employees as GENERAL_USER and REPORTS_ONLY would make this POST call:

curl \
-F "adaccount_id=act_<AD_ACCOUNT_ID>" \
-F "permitted_roles=['GENERAL_USER','REPORTS_ONLY']" \
"https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>/client_ad_accounts?access_token=<ACCESS_TOKEN>"
4
  • Thank you for answer, your answer covers only the part when business already know each other. The quote from the link you have posted - You can only send request to assets to business manager that you intend to approve and that they must already know your business. My question originally is, can we make some partnership requests to business? After that documentation is pretty clear.
    – mikron
    Commented Mar 20, 2018 at 6:58
  • 1
    No, there is no solution available that would allow you to advertise your agency to other businesses using the Business Manager API. The API is only intended for automating the request being sent when the other party is already aware and agreed to share this permissions. Commented Mar 20, 2018 at 11:27
  • @NazarenoLorenzo Thanks for your answer, This is what I'm trying to do but still permissions errors comes up I get the user token via a login app then with the token I'm requesting to this endpoint to set a facebook page and ad account as assets to a specific business account but's throwing error #10) You do not have permission to perform this action. This action requires that you can MODIFY_AD_ACCOUNTS for this business account. I took following permissions: ads_management,business_management,pages_show_list,pages_read_engagement,catalog_management Commented Nov 25, 2020 at 2:05
  • I am facing the same issue, looking for a solution. Commented Feb 12 at 8:01
1

When using this api now

curl \
-F "adaccount_id=act_<AD_ACCOUNT_ID>" \
-F "permitted_roles=['GENERAL_USER','REPORTS_ONLY']" \
"https://graph.facebook.com/<API_VERSION>/<BUSINESS_ID>/client_ad_accounts?access_token=<ACCESS_TOKEN>"

it says "(#3) Application does not have the capability to make this API call."

you should use Business On Behalf Of instead.

Not the answer you're looking for? Browse other questions tagged or ask your own question.