[英]Fb Ads api How to get Active only FB Campaigns?
我正在尝试从Facebook广告api获取广告系列列表我正在使用下面的代码
$account = new AdAccount('act_' . $account_id);
$campaignSets = $account->getCampaigns(array(
CampaignFields::ID,
CampaignFields::NAME,
CampaignFields::START_TIME,
CampaignFields::STOP_TIME,
CampaignFields::SPEND_CAP,
'effective_status'
));
但我只需要有效的广告系列列表,因此我如何通过Camapign Status = Active过滤列表
谢谢,Ronak Shah
如果您检查AdAccount->getCampaigns
的方法声明,您将看到它接受两个参数$fields
和$params
。 要检索的字段的$fields
,以及$params
作为过滤器。 您的案例示例(使用v2.5测试): -
$account = new AdAccount('act_' . $account_id);
$fields = array(
CampaignFields::ID,
CampaignFields::NAME,
CampaignFields::START_TIME,
CampaignFields::STOP_TIME,
CampaignFields::SPEND_CAP,
'effective_status'
);
$params = array(
'effective_status' => array(
Campaign::STATUS_ACTIVE
),
);
$campaignSets = $account->getCampaigns($fields, $params);
希望这可以帮助! :)
我可以向您展示如何使用原始REST-API实现此目的(我选择不使用FB的不必要的复杂SDK(Python))。
https://graph.facebook.com/v2.11/act_99999999999999/campaigns?status= [ “ACTIVE”,“PAUSED”,“ARCHIVED”,“PENDING_REVIEW”,“DISAPPROVED”,“PREAPPROVED”,“PENDING_BILLING_INFO”,“ CAMPAIGN_PAUSED“,”ARCHIVED“,”ADSET_PAUSED“]&format = json&method = get&pretty = 1&limit = 250&fields = field1,field2&time_range = {”since“:”2017-11-01“,”until“:”2017-12-05“} &的access_token = XXX
这里的关键是status=[]
GET参数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.