对特定帐户使用多个日期范围时,batchGet返回0

时间:2017-11-30 14:43:43

标签: php google-analytics google-analytics-api

我遇到了batchGet查询的问题。我在两个不同的GA帐户上使用完全相同的batchGet查询来查询两个日期范围的特定数据,上个月和一年前的上个月。当我在一个帐户上运行它时,我得到了数据。但是,当我在另一个帐户上运行时,除了每个列/日期范围,我只得到0。

如果我运行两个单独的查询 - 一个用于当前日期范围,一个用于上一个日期范围 - 我在两种情况下都可以恢复数据。但是,当有可能逃脱一个查询时,不必运行两个查询会很好。 编辑:此外,如果我在查询中包含维度,则查询返回正常。唯一的问题是无量度查询。

我认为问题可能与一年前有问题的GA帐户中没有GA数据这一事实有关 - 因此,一年前没有数据的事实可能会导致今天的数据然而,为了测试,我将我的工作GA帐户中的第二个日期范围更改为十年前(强制它返回0)并且我仍然得到正确的数字 - 正确的数字为当前日期,0为前一个一。所以看来这里有一些特定于账户的怪异。

这是我的JSON格式的请求:

{
   "reportRequests":[
      {
         "viewId":"_my_view_id_",
         "dateRanges":[
            {
               "endDate":"2017-10-31",
               "startDate":"2017-10-01"
            },
            {
               "endDate":"2016-10-31",
               "startDate":"2016-10-01"
            }
         ],
         "metrics":[
            {
               "alias":"users",
               "expression":"ga:users"
            },
            {
               "alias":"sessions",
               "expression":"ga:sessions"
            },
            {
               "alias":"averageSessionDuration",
               "expression":"ga:avgSessionDuration"
            },
            {
               "alias":"pageviews",
               "expression":"ga:pageviews"
            },
            {
               "alias":"avgTimeOnPage",
               "expression":"ga:avgTimeOnPage"
            },
            {
               "alias":"pageViewsPerSession",
               "expression":"ga:pageviewsPerSession"
            },
            {
               "alias":"percentNewSessions",
               "expression":"ga:percentNewSessions"
            },
            {
               "alias":"bounceRate",
               "expression":"ga:bounceRate"
            }
         ]
      }
   ]
}

我正在使用最新版本的PHP google / apiclient。

1 个答案:

答案 0 :(得分:0)

你偶然使用GA360吗?我认为您正在达到样本阈值。添加维度是强制GA使用完整查询,而不是点击预先聚合的表。这个问题通常只发生在GA360用户身上,因此如果您使用GA免费则无视。

如果它是GA360,并且您实际上受到了采样的影响,那么您可以继续添加维度而不会出现问题。