Примеры использования расширенных функций

В этой статье описаны расширенные функции Reporting API версии 4. Подробную информацию по этому API можно найти здесь.

Введение

Научившись создавать простые отчеты, используйте эти функции для создания расширенных отчетов:

Сводки

С помощью Reporting API версии 4 можно создавать сводные таблицы. Чтобы сформировать запрос на создание такой таблицы, задайте поле Pivot в классе ReportRequest. У объекта Pivot есть собственный набор параметров и показателей, а также необязательные параметры startGroup и maxGroupCount. Последние определяют количество параметров в сводной таблице.

Запрос

Следующий вызов API запрашивает сеансы по странам и агрегирует результаты по браузерам:

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests":
  [
    {
      "viewId": "XXXX",
      "dateRanges":
      [
        {
          "startDate": "2014-11-01",
          "endDate": "2014-11-30"
        }
      ],
      "metrics":
      [
        {
          "expression": "ga:sessions"
        }
      ],
      "dimensions":
      [
        {
          "name": "ga:country"
        }
      ],
      "pivots":
      [
        {
          "dimensions":
          [
            {
              "name": "ga:browser"
            }
          ],
          "maxGroupCount": 3,
          "startGroup": 3,
          "metrics":
          [
            {
              "expression": "ga:sessions"
            }
          ]
        }
      ]
    }
  ]
}

Заголовок столбца в ответе

В полученном объекте report заголовок metricHeader содержит список объектов pivotHeader, в котором поля pivotHeaderEntries определяют порядок значений параметров и показателей:

"columnHeader": {
    "dimensions": [
        "ga:country"
    ],
    "metricHeader": {
        "metricHeaderEntries": [
            {
                "name": "ga:sessions",
                "type": "INTEGER"
            }
        ],
        "pivotHeaders": [
            {
                "pivotHeaderEntries": [
                    {
                        "dimensionNames": [
                            "ga:browser"
                        ],
                        "dimensionValues": [
                            "Internet Explorer"
                        ],
                        "metric": {
                            "name": "ga:sessions",
                            "type": "INTEGER"
                        }
                    },
                    {
                        "dimensionNames": [
                            "ga:browser"
                        ],
                        "dimensionValues": [
                            "Firefox"
                        ],
                        "metric": {
                            "name": "ga:sessions",
                            "type": "INTEGER"
                        }
                    },
                    {
                        "dimensionNames": [
                            "ga:browser"
                        ],
                        "dimensionValues": [
                            "Android Browser"
                        ],
                        "metric": {
                            "name": "ga:sessions",
                            "type": "INTEGER"
                        }
                    }
                ],
                "totalPivotGroupsCount": 7
            }
        ]
    }
},

Строки в ответе

Каждая строка объекта reportData определяет массив объектов dateRangeValue, каждый из которых содержит набор объектов pivotValue. Порядок значений соответствует порядку показателей, перечисленных в объектах pivotHeader заголовка столбца в ответе.

"rows": [
    ...
    {
        "dimensions": [
            "United States"
        ],
        "metrics": [
            {
                "pivotValues": [
                    {
                        "values": [
                            "21",
                            "18",
                            "1"
                        ]
                    }
                ],
                "values": [
                    "192"
                ]
            }
        ]
    }
],

Обратите внимание, что в отчете только три сводных значения, так как в исходном запросе параметр maxGroupCount имеет значение 3. Сводных значений может быть не менее семи, так как параметру "totalPivotGroupsCount": 7 присвоено значение 7.

Пример строки сводной таблицы

В приведенном выше примере строка с данными по США представлена в следующей сводной таблице:

Страна Итого
сеансов
Сеансы
Internet Explorer
Сеансы
Firefox
Сеансы
браузера Android
Индия 12 3 2 4
США 192 21 18 1
Великобритания 35 12 2 0

Когорты

Когорта – это группа пользователей с общим свойством. Например, все пользователи с одинаковой датой первого посещения относятся к одной когорте. В отчете "Когортный анализ" можно изолировать и анализировать поведение когорт. Специфические для такой ситуации параметры и показатели описаны здесь.

Чтобы сформировать когортный запрос, определите объект cohort с параметрами name, type и dateRange:

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests":
  [
    {
      "viewId": "XXXX",
      "dimensions":
      [
        {
          "name": "ga:cohort"
        },
        {
          "name": "ga:cohortNthDay"
        }
      ],
      "metrics":
      [
        {
          "expression": "ga:cohortActiveUsers"
        },
        {
          "expression": "ga:cohortTotalUsers"
        }
      ],
      "cohortGroup":
      {
        "cohorts":
        [
          {
            "name": "cohort 1",
            "type": "FIRST_VISIT_DATE",
            "dateRange":
            {
              "startDate": "2015-08-01",
              "endDate": "2015-08-01"
            }
          },
          {
            "name": "cohort 2",
            "type": "FIRST_VISIT_DATE",
            "dateRange":
            {
              "startDate": "2015-07-01",
              "endDate": "2015-07-01"
            }
          }
        ]
      }
    }
  ]
}

Посмотрите, как этот запрос выглядит в API Explorer.

Ограничения

Когортный запрос должен соответствовать следующим требованиям:

  • Параметр ga:cohort нужен только в том случае, если в запросе более одного определения когорты.
  • Название когорты должно быть уникальным.
  • Максимальное количество когорт в запросе: 12.
  • Если присутствует параметр ga:cohortNthWeek, то дата начала должна приходиться на воскресенье, а дата конца – на субботу. Если присутствует параметр ga:cohortNthMonth, то дата начала должна быть первым днем месяца, а дата конца – последним. Если присутствует параметр ga:cohortNthDay, то диапазон дат должен составлять один день.
  • В качестве даты нельзя указывать текущий день.
  • В запросе batchGet могут содержаться либо когортные, либо некогортные запросы.
  • Конечная дата в диапазоне должна быть позже 1 февраля 2015 г.

Общая ценность

Отчет Общая ценность показывают, как меняется доход от пользователя и взаимодействие с ним в течение 90 дней с момента его привлечения. Подробнее…

Запрос, связанный с общей ценностью, определяется как когортный, но с полем lifetimeValue, имеющим значение true. Пример:

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet
{
  "reportRequests":
  [
    {
      "viewId": "XXXX",
      "dimensions":
      [
        {
          "name": "ga:cohort"
        },
        {
          "name": "ga:cohortNthWeek"
        }
      ],
      "metrics":
      [
        {
          "expression": "ga:cohortTotalUsersWithLifetimeCriteria"
        },
        {
          "expression": "ga:cohortRevenuePerUser"
        }
      ],
      "cohortGroup":
      {
        "cohorts":
        [
          {
            "name": "cohort 1",
            "type": "FIRST_VISIT_DATE",
            "dateRange":
            {
              "startDate": "2015-08-01",
              "endDate": "2015-09-01"
            }
          },
          {
            "name": "cohort 2",
            "type": "FIRST_VISIT_DATE",
            "dateRange":
            {
              "startDate": "2015-07-01",
              "endDate": "2015-08-01"
            }
          }
        ],
        "lifetimeValue": true
      }
    }
  ]
}

Посмотрите, как этот запрос выглядит в API Explorer.

Параметры и показатели, связанные с общей ценностью и когортами

Параметры

Название параметра Определение
ga:cohort Название когорты, к которой принадлежит пользователь. Пользователь может принадлежать к нескольким когортам – это зависит от их определения (так же, как пользователь может принадлежать к нескольким сегментам).
ga:cohortNthDay Период в днях с даты определения когорты. Например, если в когортном запросе указана дата первого посещения 2015-09-01, то для даты 2015-09-04 параметр ga:cohortNthDay равняется трем.
ga:cohortNthMonth Период в месяцах с даты определения когорты.
ga:cohortNthWeek Период в неделях с даты определения когорты.
ga:acquisitionTrafficChannel Канал трафика, по которому был привлечен пользователь. Определяется по его первому сеансу. Канал трафика определяется в момент привлечения пользователя на основе правил по умолчанию для группы каналов (на уровне представления, если оно имеется).
ga:acquisitionSource Источник, с помощью которого был привлечен пользователь. Определяется по его первому сеансу.
ga:acquisitionMedium Канал, через который был привлечен пользователь. Определяется по его первому сеансу.
ga:acquisitionSourceMedium Комбинированное значение параметров ga:userAcquisitionSource и ga:acquisitionMedium.
ga:acquisitionCampaign Кампания, через которую был привлечен пользователь. Определяется по его первому сеансу.

Показатели

Название показателя Определение
ga:cohortActiveUsers Используется с параметрами периода (ga:cohortNthDay, ga:cohortNthWeek или ga:cohortNthMonth). Число пользователей из когорты, посещавших ресурс в выбранный период времени. Так, если параметр ga:cohortNthWeek = 1 равен единице, то это количество пользователей в когорте, проявлявших активность в течение второй недели. Если в запросе нет параметра ga:cohortNthDay, ga:cohortNthWeek или ga:cohortNthMonth, значение этого показателя будет равно значению показателя ga:cohortTotalUsers.
ga:cohortTotalUsers Количество пользователей в когорте (размер когорты).
ga:cohortAppviewsPerUser Количество запусков приложения для каждого пользователя в когорте.
ga:cohortGoalCompletionsPerUser Количество достигнутых целей на пользователя в когорте.
ga:cohortPageviewsPerUser Количество просмотров страницы на пользователя в когорте.
ga:cohortRetentionRate Коэффициент удержания группы пользователей.
ga:cohortRevenuePerUser Доход от одного пользователя в когорте.
ga:cohortVisitDurationPerUser Длительность сеанса на пользователя в когорте.
ga:cohortSessionsPerUser Количество сеансов на пользователя в когорте.

Показатели, связанные с общей ценностью

Название показателя Определение
ga:cohortTotalUsersWithLifetimeCriteria Относится к запросам с параметрами ga:acquisitionTrafficChannel, ga:acquisitionSource, ga:acquisitionMedium или ga:acquisitionCampaign. Это количество пользователей в когорте, которые привлечены через текущий канал, источник или кампанию. Так, если параметр ga:acquisitionTrafficChannel=Direct имеет значение Direct, то это количество пользователей в когорте, привлеченных напрямую. Если в запросе нет таких параметров, показателю будет присвоено значение ga:cohortTotalUsers (только для представлений Мобильное приложение).
ga:cohortAppviewsPerUserWithLifetimeCriteria Количество запусков приложения на пользователя в когорте (только для представлений Мобильное приложение).
ga:cohortGoalCompletionsPerUserWithLifetimeCriteria Количество достигнутых целей на пользователя для параметра, определяющего привлечение пользователя из когорты (только для представлений Мобильное приложение).
ga:cohortPageviewsPerUserWithLifetimeCriteria Количество просмотров страницы на пользователя для параметра, определяющего привлечение пользователя из когорты (только для представлений Мобильное приложение)
ga:cohortRevenuePerUserWithLifetimeCriteria Доход от пользователя для параметра, определяющего привлечение пользователя из когорты (только для представлений Мобильное приложение)
ga:cohortSessionsPerUserWithLifetimeCriteria Длительность сеанса на пользователя для параметра, определяющего привлечение пользователя из когорты (только для представлений Мобильное приложение)