在 Facebook Marketing 的 Ad Insights 中使用时间范围 API

Use time range in Ad Insights of Facebook Marketing API

我正在尝试获取我的广告在两个日期之间的展示次数

我在这条路径上使用 Graph API Explorer

act_0123456789/ads?fields=insights{ad_id,ad_name,impressions}

我想使用 'time_range' 属性,我们可以在 Marketing API reference 中找到它,但我不知道语法。谁能帮帮我?

我无法评论您使用的方法,因为我自己没有使用过。但是,这是我成功使用的另一种方法:

https://graph.facebook.com/v2.5/act_xyz/insights?level=<yourLevel>&fields=ad_id,ad_name,impressions&time_range[since]=2016-02-15&time_range[until]=2016-02-16&limit=25

其中 <yourLevel> 可以是以下之一:adadsetcampaign

另请注意,我在 java 中直接使用了 http 请求,这就是我向您展示请求本身的原因。希望您可以推断出您自己的解决方案。

使用您在问题中显示的相同端点

act_0123456789/ads?fields=insights{ad_id,ad_name,impressions}

指定时间范围的方法是

act_0123456789/ads?fields=insights.time_range({"since":"2017-08-07","until":"2017-08-14"}){ad_id,ad_name,impressions}

(当然,这两个日期只是作为示例)

最简单的方法是

act_0123456789?fields=ads{insights.time_range({"since":"2019-03-03","until":"2019-03-03"}).time_increment(1){impressions}}

如果您不需要每日数据,请删除 .time_increment(1)

您可以将 {} 用于

等子字段
 act_0123456789?fields=campaigns{ads{name,insights,adcreatives{image_url}}}

您可以使用 .和 () 用于类似参数;始终确保您只在参数之后使用字段,例如此顺序 .(){}

act_0123456789?fields=campaigns.limit(1).time_range({"since":"2019-03-03","until":"2019-03-03"}).time_increment(1).breakdowns(country){ads{name,insights.time_range({"since":"2019-03-03","until":"2019-03-03"}).time_increment(1).breakdowns(country),adcreatives{image_url}}}