Google Analytics API 插入非抽样报告时出错

Google Analytics API Error for inserting unsampled report

我使用的是 ruby gem google-api-client 版本 0.8.6。我已经设置好帐户和 oauth 的东西。我可以查询分析 api 的只读方面,包括列出非抽样报告。但是,如果我尝试插入非抽样报告,则会收到 400 错误:需要字段标题

我正在传递标题,所以这个错误消息不正确,或者我不知道是什么。

参数如下:

{"accountId"=>xxx,
 "webPropertyId"=>"UA-xxx-1",
 "profileId"=>"xxx",
 "title"=>"Browsers",
 "start-date"=>"2014-01-01",
 "end-date"=>"2014-01-31",
 "metrics"=>"ga:pageviews"}

这是 URL 和 gem 调用:

 https://www.googleapis.com/analytics/v3/management/accounts/xxx/webproperties/UA-xxx-1/profiles/xxx/unsampledReports?dimensions=ga%3Abrowser&end-date=2014-01-31&kind=analytics%23unsampledReport&metrics=ga%3Apageviews&start-date=2014-01-01&title=Browsers

此请求的参数应在请求 body 中发送,而不是作为查询参数附加到 URL。根据此错误,可能发生的情况是 Google Analytics 正在查看请求 body,它首先查找的是 title 字段。当它找不到时(因为你的在 URL 中),它会返回一个错误,指出需要一个标题。

据我所知,gem 似乎错误地实现了这些 API 调用。您可能想尝试自己在代码中执行 POST。

更新: 您可以尝试使用 this method in the APIs Explorer 来更好地理解请求的格式。