Google Analytics V4 API: получение данных за последние 30 дней

Я играю с отчетом api v4 от Google Analytics. Я хочу отобразить график в своем бэкэнде, где я показываю последние 30 дней некоторых показателей. Проблема в том, что я получаю только накопленные / суммированные значения.

Например, это тело, которое я отправляю на API

  body = {
    reportRequests: [{
      dateRanges: [
        {
          startDate: Date.parse('2016/10/01'),
          endDate: Date.parse('2016/10/31')
        }
      ],
      viewId: '12345',
      metrics: [{ expression: "ga:users" }],
      dimensions: [{ name: "ga:pagePath" }]
    }]
  }

А потом я получаю много URL-адресов (конечно, я не отфильтровал вывод), как это:

{"reports"=>
  [{"columnHeader"=>
     {"dimensions"=>["ga:pagePath"],
      "metricHeader"=>
       {"metricHeaderEntries"=>[{"name"=>"ga:users", "type"=>"INTEGER"}]}},
    "data"=>
     {"rows"=>
       [{"dimensions"=>["/"], "metrics"=>[{"values"=>["2854"]}]},
        {"dimensions"=>["/?extlink_img=0"], "metrics"=>[{"values"=>["113"]}]},
        {"dimensions"=>["/?v=338"], "metrics"=>[{"values"=>["12"]}]},
        ...

Но как мне запрашивать API, когда я хочу, чтобы количество пользователей за последние 30 дней, для определенного маршрута, например /? Это вообще возможно?

1 ответ

Решение

Я выяснил это сам, есть измерение для этого: ga:date:

  body = {
    reportRequests: [{
      dateRanges: [
        {
          startDate: Date.parse('2016/10/01'),
          endDate: Date.parse('2016/10/31')
        }
      ],
      viewId: '12345',
      metrics: [{ expression: "ga:users" }],
      dimensions: [{ name: "ga:pagePath" }, {name: 'ga:date'}]
    }]
  }

Есть и другие временные измерения https://developers.google.com/analytics/devguides/reporting/core/dimsmets

Другие вопросы по тегам