【问题标题】:Facebook Marketing API - Object with ID does not existFacebook Marketing API - 具有 ID 的对象不存在
【发布时间】:2019-01-22 12:04:34
【问题描述】:

我今天开始使用 Facebook Marketing API。 我只是想从我的 Facebook 业务帐户中读取广告系列。我有一个广告帐户和一个在那里创建的广告系列。 我想我的问题是生成令牌。

我只是从这里生成令牌:https://developers.facebook.com/tools/explorer?classic=0

我得到的错误是:

{ error:
      { message: 'Unsupported get request. Object with ID \'10xxxxxxxx\' does not exist, cannot be loaded due to missing permissions, or does not support this operation. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api',
        type: 'GraphMethodException',
        code: 100,
        error_subcode: 33,
        fbtrace_id: 'E5CAU6UvHwF' } }

我的 Node.js 代码是:

const readCampaign = async (program) => {    
    const accessToken = TOKEN
    const api = adsSdk.FacebookAdsApi.init(accessToken)

    const account = new AdAccount('act_' + program.accountid)
    console.log('act_' + account.id) // fields can be accessed as properties
    let result
        account.read([AdAccount.Fields.name])
            .then((account) => {
                return account.getCampaigns([Campaign.Fields.name], { limit: 10 }) // fields array and params
            })
            .then((result) => {
                campaigns = result
                campaigns.forEach((campaign) => console.log(campaign.name))
            }).catch(console.error);

    console.log(result)
}

要生成令牌,我选择我创建的应用程序“获取用户访问令牌”,然后在那里选择所有可能的权限 - 只是为了测试。

我做错了什么?谢谢

【问题讨论】:

    标签: facebook facebook-marketing-api facebook-business-sdk


    【解决方案1】:

    我怀疑这是由于权限错误。

    首先,我会检查您的应用是否可以访问您尝试访问的帐户。

    然后我建议通过您的业务经理创建一个系统用户(可以在业务设置下找到),为其分配对广告帐户的访问权限,并在初始化库时使用系统用户的令牌。

    一个很大的优点是系统用户的令牌没有这么短的过期时间。

    Facebook system user doc

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-12
      • 1970-01-01
      相关资源
      最近更新 更多