如何为广告投放指标批量请求

问题描述:

我有一个约260个广告系列ID的列表,我希望获取每个广告系列ID的所有广告数据。如何为广告投放指标批量请求

我正在使用以下内容来请求一个广告系列ID,但是如果我在循环中执行此操作并且很快达到我的用户请求限制。

$campaign = new AdCampaign($campaign_id); 
$adsets = $campaign->getAdSets($fields); 

我下面https://developers.facebook.com/docs/marketing-api/guides/chapter-6-ads-management#sets和目前正在使用他们有什么建议:提前

use FacebookAds\Object\AdCampaign; 
use FacebookAds\Object\Fields\AdSetFields; 

$fields = array(
    AdSetFields::NAME, 
    AdSetFields::START_TIME, 
    AdSetFields::END_TIME, 
    AdSetFields::DAILY_BUDGET, 
    AdSetFields::LIFETIME_BUDGET, 
); 

$campaign = new AdCampaign('<CAMPAIGN_GROUP_ID>'); 
$adsets = $campaign->getAdSets($fields); 

感谢。

使用Facebook的批量请求方法,请求栏的所有活动https://developers.facebook.com/docs/graph-api/making-multiple-requests#multiple_methods

PHP Ads SDK does not support FB batch requests using its object wrappers,但你可以使用一般的API的包装很轻松了。例如:

$response = $api->call('/', 'POST', array('batch' => $json_string)); 

其中$ API是实\阿比的一个实例,$ json_string为adset字段间歇操作的请求的JSON编码数组。该JSON看起来应该像下面的例子(使用API​​ 2.4版本,并编造活动组ID 1000001和1000002):

[ 
    { "method": "GET", 
     "relative_url":"v2.4/1000001?fields=name,start_time,end_time,daily_budget,lifetime_budget" 
    }, 
    { "method": "GET", 
     "relative_url":"v2.4/1000002?fields=name,start_time,end_time,daily_budget,lifetime_budget" 
    } 
] 
+0

我可能会感到困惑,但我怎么通过在多个的?他们都将是GET请求,所以也许我有错误的想法,不需要使用批量请求? – Stretch0

+0

我更新了示例代码示例以在批处理请求中显示多个GET请求。如果这个答案适合你,我会很感激,如果你把它标记为接受。 – bjeavons

+0

用于PHP的FB Ads SDK现在支持批量请求,这里是一个示例https://developers.facebook.com/docs/php/howto/example_batch_request – bjeavons