Search code examples
facebook-graph-apiinstagraminstagram-graph-api

Is it pages_show_list enough for getting instagram_business_accounts?


That Facebook Graph API docs are not the best in the world I guess it's something more than well known.

The fact is that we are creating an app to access to Instagram Business Accounts data. Facebook documentation, in the Getting started guide, says to use manage_pages permission to get the list of instagram business accounts linked to pages. The problem of that permission is that requires application review and that, under our previous experience, takes between 4 and 6 weeks to happen. Also, we don't want to manage user pages, just get the Instagram Business Accounts linked to them.

So we have tried to use pages_show_list instead. But in the tests I have made, I only can see the Instagram Business Account linked to a page I manage, while using manage_pages(same query on Graph API Explorer) I get the two Instagram Business Accounts I have linked to Facebook pages. I have the same tasks (roles) for both pages.

That makes me wonder if it's that pages_show_list for whatever reason doesn't work for that, or it's something specific about the second page/Instagram Business Account that I do not achieve to understand.


Solution

  • After some tests looks like manage_pages is a must to get Instagram Business Accounts connected to Facebook Pages.

    After three different users testing, each of them owning two different Facebook Pages connected to two different Instagram Business Accounts, I was the only one who achieved to see one of the Instagram accounts with a token with pages_show_list granted permission.

    Why I can see that account? I don't know, but definitely that's the weird case and it's not possible, in general, get the Instagram Business Account connected to a Facebook Page with a user token with pages_show_list as permission instead of manage_pages.

    UPDATE: I've finally find a hint on the documentation. Looks like the difference is made if the role permissions to the Page are granted to the user via Business Manager or not. If they have been granted in that way, apart from pages_show_list, in theory one of manages_pages, business_management or ads_management permissions are needed.

    Even when I don't know how to know if the Page permissions/role has been given in that way, I've tried it and it worked for me with pages_show_list + manage_pages and pages_show_list + business_management but not with pages_show_list + ads_management.