无法通过非管理员的access_token获取广告投放广告系列

时间:2014-09-23 05:13:04

标签: facebook facebook-graph-api facebook-ads-api

在Facebook广告帐户中,可以添加其他Facebook帐户来创建/查看/管理广告系列。所以一个帐户" A"他下面可以有多个广告帐户。虽然他不是这些帐户的管理员。任何广告帐户管理员唯一的额外权限就是能够查看和修改信用卡信息。

现在adaccount" A"已使用ads_management,ads_read权限授权我的应用。但是使用A& access_token我无法获取由A管理的广告帐户广告系列,因为A不是这些帐户的管理员。我认为这是错误的,因为A能够通过仪表板管理广告,使用A的令牌我也应该能够通过API获取广告系列。

我收到以下错误:

{   "error": {
    "message": "(#10) You do not have sufficient permissions to perform this action", 
    "type": "OAuthException", 
    "code": 10   } }

有人可以告诉我,如果我做错了,或者有其他方法我可以获取adaccount广告系列。我不能让我的用户使用每个adaccount登录到我的应用程序。用户只能使用他用来管理所有其他品牌帐户的帐户登录。

4 个答案:

答案 0 :(得分:2)

鉴于权限错误的一般性质,这不是每个人的答案,但在浪费了大量时间之后,事实证明问题(对我来说)是这样的:

  1. 已正确添加为广告帐户广告客户
  2. 已添加到相关的帐户组
  3. 当第二点被解决时,我不再遇到OAuthException: (#10) You do not have sufficient permissions to perform this action错误。作为参考,“帐户组”部分目前可通过广告管理系统左侧边栏中的“设置”进行访问,并位于“设置”页面的“广告帐户角色”部分下。

答案 1 :(得分:1)

Facebook权限围绕用户而非帐户。用户有权管理一组adaccounts。

通过向图表上的me/adaccounts发出请求,可以找到他们能够管理的广告帐户。如果您在此集中未看到广告帐户,则该用户无权访问。

此外,用户还有角色。角色如下,可以从users上的adaccount连接中读取:

Level 1001, administrator access
Level 1002, general-user access
Level 1003, reports-only access

如果用户具有仅限报告的访问权限,则无法阅读有关广告帐户的所有内容。

答案 2 :(得分:0)

我自己也遇到过这个问题。

问题在于我们无法将用户添加为"广告客户管理员"来自标准广告帐户界面。

一旦我们声称"广告帐户使用新的business.facebook.com网站,可以选择将用户添加为管理员。

该选项位于"设置>广告帐户"在https://business.facebook.com

答案 3 :(得分:0)

我的帐户是广告帐户管理员,但无法执行API:GetAdsUser()和GetCampaigns()。

AdAccount adAccount = new AdAccount("act_{add-account-id}");
var adUsers = adAccount.GetAdUsers();
var campains = adAccount.GetCampaigns();

抛出异常:(#10)您没有足够的权限来执行此操作。 我的帐户或我的Facebook应用程序会发生什么?