自定义维度未向Google Analytics API V4报告

时间:2017-10-16 03:16:51

标签: google-analytics-api

我正在尝试传递收集的信息,"自定义维度,"从Google跟踪代码管理器到Google Analytics,然后通过Google Analytics V4 API将其解压缩出来。

我已经在本文中设置了Simo Ahava建议的四个基本自定义维度。

我的变量设置如下所示:

variable setup

基本上,我已成功将userID_dimension,hittimestamp_dimension,clientid_dimension和sessionid_dimension传递到Google Analytics信息中心,但由于某种原因,我无法通过API提取hittimestamp_dimension。

这是我能在仪表板上看到的内容:

Google Analytics Dashboard

就API本身而言,我使用的是Google提供的HelloAnalytics.py python版本,我能够提取所有上述信息,减去每个信息右侧的时间戳维度。

我将时间戳信息存储在dimension2中,但在进行以下调用时(再次使用API​​ V4),我得到空白......没有。

analytics.reports().batchGet(
  body={
    'reportRequests': [
    {
      'viewId': VIEW_ID,
      'dateRanges': [{'startDate': '2017-10-05', 'endDate': '2017-10-06'}],
      'samplingLevel': 'LARGE',
      'dimensions': [{'name': 'ga:dimension4'},{'name': 'ga:dimension2'}]
     }]
  }
).execute()

拨打此电话后,可以预期上述内容将报告与Google Analytics信息中心显示的内容类似的维度。例如。人们会认为仪表板本身正在使用API​​。然而打印出来的是空白。所有其他自定义尺寸均按预期打印出来。

如果我尝试仅在维度2上调用上述函数而没有其他维度,则它也是空白的。

为了在API中提取命中范围的变量,是否需要做一些特别的事情?或者API是否只允许命中范围的变量通过?

感谢,

1 个答案:

答案 0 :(得分:0)

您忘记在请求中添加'指标' 字段,根据文档要求 资料来源:Reporting API v4 - Method: reports.batchGet

  

要求的指标。请求必须至少指定一个指标。请求可以包含总共10个指标。

以下修改过的请求应该有效:

analytics.reports().batchGet(
  body={
    'reportRequests': [
    {
      'viewId': VIEW_ID,
      'dateRanges': [{'startDate': '2017-10-05', 'endDate': '2017-10-06'}],
      'samplingLevel': 'LARGE',
      'dimensions': [{'name': 'ga:dimension4'},{'name': 'ga:dimension2'}],
      'metrics': [{'expression': 'ga:sessions'}]
     }]
  }
).execute()