【问题标题】:Marketing Api Permission Exception营销 API 权限异常
【发布时间】:2016-09-29 11:41:44
【问题描述】:

我需要使用 Marketing Api 获得一些自动化的广告洞察。为此,我通过 Business Manager 创建了一个系统用户,并生成了一个具有 ads_read 权限的系统用户访问令牌。

然后使用此令牌进行 api 调用并获取特定活动的见解,使用 FacebookAds php v2.6 sdk,我收到以下错误:

 Uncaught exception 'FacebookAds\Http\Exception\PermissionException'
 with message '(#275) Cannot determine the target object for this
 request. Currently supported objects include ad account, business
 account and associated objects.'

我的应用是否需要被列入白名单,或者我是否遗漏了其他内容?我注意到在“ads_read”权限旁边有一条说明“(您的应用必须列入白名单)”。

这是我正在使用的示例代码

<?php

define('VENDOR_DIR', 'vendor/'); // Path to the Vendor directory 
$loader = require VENDOR_DIR.'autoload.php';

use FacebookAds\Api;
use FacebookAds\Object\Campaign;
// Initialize a new Session and instantiate an Api object
Api::init(
  'xxxxxxxxxxxxxxxx', // App ID
  'xxxxxxxxxxxxxxxxx',
  'xxxxxxxxxxxxxxxxxx' // System User Access Token
);

$api = Api::instance();

use FacebookAds\Object\Values\InsightsLevels;

$campaign = new Campaign('xxxxxxxxxxxxx');

$params = array(
  'level' => InsightsLevels::CAMPAIGN,
);

$async_job = $campaign->getInsightsAsync(array(), $params);

$async_job->read();

while (!$async_job->isComplete()) {
  sleep(1);
  $async_job->read();
}

$async_job->getResult();

?>

【问题讨论】:

  • 您尝试使用的广告系列 ID 在此处似乎无效
  • 感谢您回复@PaulBain!我使用了出现在以下 url 中“ids”字段之后的 id。这个网址是我在查看我的广告时看到的。我还使用广告管理器启用了广告系列 ID 显示,我可以确认它们是确切的数字。 busineyadayada/act=yyyyyyyyyyyyyyyy&pid=y&ids=xxxxxxxxx&business_id=yyyy

标签: php facebook whitelist facebook-marketing-api


【解决方案1】:

您的应用似乎没有 ads_read 权限。在这里您可以找到有关如何索取的更多信息:https://developers.facebook.com/docs/marketing-api/access

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多