Unexpected/unpredictable 对 Facebook Marketing Insights 批量请求的结果 API

Unexpected/unpredictable results with batch requests to Facebook Marketing Insights API

我有一个 Google Apps 脚本,它向 Facebook 营销 API (Insights) 发送批量请求。我在多个广告系列中每天获取移动安装和广告支出。但是,对于大量数据,结果出乎意料。

批次中的每个亲戚 URL 都在请求单个 Facebook 活动的每日细分,如下所示:

{"method":"GET",   
 "relative_url":"<CAMPAIGN_ID>/insights?fields=actions,spend&time_range={'since':'yyyy-mm-dd','until':'yyyy-mm-dd'}&time_increment=1"}

对于给定日期 运行ge,我正在为 n 这样的活动创建批量请求 URL,如下所示:

  var fbCampaigns = [ C1, C2, C3 ... ]; 
  var batchRequests = []; 

  for(var i=0; i<fbCampaigns.length; i++) {
    // URL encoded version of the relative URL above
    batchRequests.push("%7B%22method%22%3A%22GET%22%2C%22relative_url%22%3A%22"
      + fbCampaigns[i]+"%2Finsights%3Ffields%3Dactions%2Ccampaign_id%2Cspend%26"
      + "time_range%3D%7B%27since%27%3A%27"+start+"%27%2C%27until%27%3A%27"
      + end+"%27%7D%26time_increment%3D1%22%7D");
  }

  var url =  "https://graph.facebook.com/v2.11/?batch=["
             + batchRequests.join(",")
             + "]&access_token="+fbToken;

由于 URL 变得太长,我将活动数组分成 5 个部分,运行 以上每个部分分开。

这对单次约会或短约会非常有用 运行ge。然而,对于更大的日期 运行ges (100+),它将首先获取正确的数据,然后突然开始检索所有、仅部分或 none 活动的数据,这是非常不可预测的.

我没有收到任何关于节流的错误代码或警告。我的问题是,在允许的日期数量或批处理请求数量方面,我是否遗漏了某个限制?这很奇怪,因为我只对我的整个数据发出了三个批处理请求。

找到问题了!在寻找模式后,我意识到 对于每个活动,最多获取 51 个日期的数据。

绝对无法在网络上找到有关此隐藏限制的详细信息 - 如果有人有任何进一步的信息,请添加到此。

编辑:后来意识到我在文档中遗漏了一个分页系统。