如何在Facebook广告api中获取多个广告系列的统计信息

时间:2014-12-20 08:14:14

标签: facebook-php-sdk facebook-ads-api

我编写以下代码以检索单个广告系列统计信息。

$fields = array(
      'start_time','actions','spent','clicks','impressions','end_time',
    );
$params = array();
$campaign = new AdCampaign(123456);
$stats = $campaign->getStats($fields, $params);

在这里我可以访问统计数据。但是当使用这个函数循环时,我遇到了像

这样的问题

致电:$campaign = new AdCampaign($campaign_id); 错误:"An access token is required to request this resource"

但是使用图表API,我可以一次访问多个广告系列统计信息

https://graph.facebook.com/stats?ids=123,456,789&fields=start_time,actions,spent,clicks,impressions,end_time&access_token= ...

我需要使用Ads API ....请为我解决..

1 个答案:

答案 0 :(得分:0)

我认为这是目前SDK中缺少的一项功能,因为您只能访问相对于对象的统计信息。

但是,假设您正确地实例化了API类,那么在循环中调用stats应该不是问题。

use FacebookAds\Api;
use FacebookAds\Object\AdCampaign;

Api::init($app_id, $app_secret, $access_token);

$campaign_ids = array(...);

$fields = array(
  'start_time',
  'actions',
  'spent',
  'clicks',
  'impressions',
  'end_time',
);    
$params = array();
$stats = array();
foreach($campaign_ids as $id) {
  $campaign = new AdCampaign($id);
  $stats[$id] = $campaign->getStats($fields, $params);
}

您还可以使用AdAccount上的getAdCampaignStats获取所有广告系列的所有统计信息。