8

按照这里的文档

https://developers.facebook.com/docs/marketing-api/reference/ad-campaign-group/insights/

我正在查询有关广告效果等的见解。但是,我无法使 time_frame 起作用。像这样的查询

https://graph.facebook.com/v2.5/_CAMPAIGN_ID_/insights?access_token= AT &time_range&since=2015-11-08&until=2015-11-12

只返回生命周期统计信息。我尝试以多种方式修改查询,但它始终是错误或生命周期。

任何帮助将不胜感激!

谢谢

4

7 回答 7

13

我想你现在已经找到了答案,但这可以帮助其他人,因为从经验来看,文档并不总是最友好的。

您需要将其格式化为 time_range 对象,下面的示例对象来自您包含的文档的该页面。它本质上只是一个具有 2 个属性的对象 - 自和直到。

{'since'=>YYYY-MM-DD,'until'=>YYYY-MM-DD}

因此,从您使用的示例 URL 中,而不是使用单个参数设置sinceuntil值,时间范围将设置如下(我已经对对象进行了 URL 编码):

time_range=%7B%22since%22%3A%22 YYYY-MM-DD %22%2C%22until%22%3A%22 YYYY-MM-DD %22%7D

于 2016-03-01T10:34:37.613 回答
3

time_range如果您不想编码URL并希望保持 URL 干净,另一种选择是按如下方式传递对象。

Facebook 足够聪明,可以解析 URL 并设置正确的time_range.

https://httpbin.org/get?time_range[since]=2019-08-10&time_range[until]=2019-09-09
于 2019-09-09T18:42:56.330 回答
2

如果您在 Graph API Explorer 中执行此操作,则应如下所示:

  1. 工作:time_range={since:'2021-05-01',until:'2021-05-05'}
  2. 不工作:time_range={'since':2021-05-01,'until':2021-05-05}

我从 Facebook 的文档本身获得了 #2 语法:|

于 2021-05-07T06:36:07.310 回答
0

是的,Facebook 没有为此提供好的文档。我也很挣扎。我们可以使用时间范围来获取特定日期或日期范围的数据。

在 Graph API 中,您可以像下面这样提供?fields=id,name,adaccounts{campaigns{adsets{ads{insights.time_range({'since':'2020-05-01','until':'2020-05- 01'}){adset_id,campaign_id,ad_id,clicks}}}}}

注意instances.time_range({'since':'2020-05-01','until':'2020-05-01'}) 中的语法。

一旦您提供上述代码并提交,fb 会提供不同语言的代码,例如 JavaScript、ios、android 等。

curl 将如下所示

curl -i -X GET \ " https://graph.facebook.com/v6.0/me?fields=id%2Cname%2Cadaccounts%7Bcampaigns%7Badsets%7Bads%7Binsights.time_range(%7B 'since'%3A' 2020-05-01'%2C'直到'%3A'2020-05-01'%7D)%7Badset_id%2Ccampaign_id%2Cad_id%2Cclicks%7D%7D%7D%7D%7D&access_token="

于 2020-05-13T20:25:39.903 回答
0

由于上面提到的解决方案都不适合我,尽管这是一个非常晚的回应。我如何尝试如下:

dates = 'since='+start_date+'&until='+end_date

requests.get("https://graph.facebook.com/" + BusinessManagerConfig.version + key + \
                               "/insights?metric=" + ','.join(BusinessManagerConfig.metrics) + \
                           "&period=day&" + dates + \
                               "&access_token="+page_token + '&limit=5')

我希望它可以帮助别人

于 2020-06-05T08:54:36.560 回答
0

这个每次都能吸引我。这是一个在 Graph API 中有效的 URL。

act_2222222/insights?fields=unique_actions,actions&level=account&time_ranges=[{since:'2020-06-12',until:'2020-06-12'}]

2222222 是您的广告帐户

于 2020-06-16T03:38:12.843 回答
0

我一直收到一个 HTML 错误页面作为响应,直到我终于意识到逗号后面的空格让这个 API 不满意。

“time_range={since:'2020-06-12',until:'2020-06-14'}”工作正常。

"time_range={since:'2020-06-12', until:'2020-06-14'}" 造成很多痛苦。

于 2020-12-14T15:22:34.677 回答