已获取Instagram Graph API全部权限仍无法调用business_discovery端点
解决Instagram Graph API business_discovery权限错误(#10)
问题根源
这个#10错误本质是你的应用或访问令牌缺权限、配置不对,或者调用方式不符合API规则。
分步解决办法
1. 换用正确的访问令牌类型
- 别用Graph API Explorer默认生成的普通用户令牌,得用业务访问令牌(Business Access Token)。这个令牌必须关联你的Facebook Business Manager,还要包含以下权限:
instagram_basicpages_show_listbusiness_management
- 生成方式:在Graph API Explorer里选中你关联的Facebook主页,切换到业务令牌模式,勾选上述权限后重新生成令牌。
2. 检查应用的审核与权限状态
- 如果你的应用还在开发模式,只能访问你自己拥有的Instagram主页数据。要拿别人公共主页的洞察,必须把应用提交审核,拿到
business_discovery相关权限的批准。 - 去Facebook开发者后台的「权限与功能」页面,确认
instagram_basic、business_management这些权限已经申请并通过审核(生产环境才需要)。
3. 修正API调用的主体ID
- API路径里
v19.0/后面的ID,必须是你自己的Instagram主页ID或者关联的Facebook主页ID,不是目标主页(比如bluebottle)的ID。 - 正确调用示例:
https://graph.facebook.com/v19.0/[你的Instagram主页ID]/?fields=business_discovery.username(bluebottle){followers_count,media_count}&access_token=[你的业务访问令牌] - 用
me代替ID的话,得确保令牌的主体是你的Instagram主页或关联的Facebook主页。
4. 确认目标主页的可访问性
- 目标主页(bluebottle)必须是公开主页,私密主页就算有权限也拿不到数据。
- 确保目标主页没设置限制,允许第三方API访问它的公开数据。
5. 验证令牌的有效性
- 用这个API检查令牌的权限和主体:
https://graph.facebook.com/v19.0/debug_token?input_token=[你的访问令牌]&access_token=[你的应用ID|应用密钥] - 看返回结果里的
data.scopes有没有包含所需权限,data.instagram_business_account是不是指向你的Instagram主页ID。
额外提醒
- 确认你的Facebook Business Manager已经正确关联了应用和Instagram主页,所有资产的权限设置都没问题。
- 开发阶段测试的话,可以先用自己的另一个公开主页当目标,先跑通流程再换目标主页。
内容的提问来源于stack exchange,提问作者Animesh Prajapati
相关产品推荐
相关产品推荐

