Метод reports.batchGet

Возвращает данные Google Analytics.

HTTP-запрос

POST https://analyticsreporting.googleapis.com/v4/reports:batchGet

(В идентификаторе ресурса используется синтаксис шаблона URI.)

Тело запроса

Ниже приведена структура данных в теле запроса.

JSON-представление

{
  "reportRequests": [
    {
      object(ReportRequest)
    }
  ],
}
Название поля Тип Описание
reportRequests[] object(ReportRequest) Запрос, на каждый из которых поступает отдельный ответ. Всего может быть не более 5 запросов. Значения dateRanges, viewId, segments, samplingLevel и cohortGroup у всех запросов должны быть одинаковыми.

Тело ответа

Ниже приведена структура данных в ответе, полученном на запрос.

Главным классом ответа, включающим в себя отчеты Reporting API, является batchGet.

JSON-представление

{
  "reports": [
    {
      object(Report)
    }
  ],
}
Название поля Тип Описание
reports[] object(Report) Ответы на каждый из отдельных запросов.

Авторизация

Требует одной из следующих областей применения OAuth:

  • https://www.googleapis.com/auth/analytics.readonly
  • https://www.googleapis.com/auth/analytics

ReportRequest

Главный класс, описывающий запрос Reporting API.

JSON-представление

{
  "viewId": string,
  "dateRanges": [
    {
      object(DateRange)
    }
  ],
  "samplingLevel": enum(Sampling),
  "dimensions": [
    {
      object(Dimension)
    }
  ],
  "dimensionFilterClauses": [
    {
      object(DimensionFilterClause)
    }
  ],
  "metrics": [
    {
      object(Metric)
    }
  ],
  "metricFilterClauses": [
    {
      object(MetricFilterClause)
    }
  ],
  "filtersExpression": string,
  "orderBys": [
    {
      object(OrderBy)
    }
  ],
  "segments": [
    {
      object(Segment)
    }
  ],
  "pivots": [
    {
      object(Pivot)
    }
  ],
  "cohortGroup": {
    object(CohortGroup)
  },
  "pageToken": string,
  "pageSize": number,
  "includeEmptyRows": boolean,
  "hideTotals": boolean,
  "hideValueRanges": boolean,
}
Название поля Тип Описание
viewId string Идентификатор представления Google Analytics, из которого извлекаются данные. У всех объектов ReportRequest в методе batchGet должен быть один и тот же идентификатор viewId.
dateRanges[] object(DateRange) Диапазон дат в запросе. В одном запросе может быть не более двух диапазонов дат. Ответ содержит набор показателей, каждый из которых соответствует комбинации параметров для отдельного диапазона дат в запросе. Таким образом, если в запросе два диапазона, ответ будет содержать два набора показателей. Поле reportRequest.dateRanges для запросов по когортам и запросам за все время описывать не нужно. Если диапазон дат не указан, используется диапазон по умолчанию (startDate – текущая дата минус 7 дней; endDate – текущая дата минус 1 день). У всех объектов ReportRequest в методе batchGet должны быть одинаковые значения dateRanges.
samplingLevel enum(Sampling) Желаемый размер выборки для отчета. Если поле samplingLevel не описано, применяется уровень выборки по умолчанию (DEFAULT). У всех объектов ReportRequest в методе batchGet должны быть одинаковые значения samplingLevel. Подробнее…
dimensions[] object(Dimension) Параметры, затребованные в запросе (не более 9 параметров на запрос).
dimensionFilterClauses[] object(DimensionFilterClause) Объекты, описывающие условия фильтрации по значениям параметров. Комбинируются при помощи логического оператора AND. Фильтрация выполняется до объединения данных по параметрам, в связи с чем возвращаемые показатели учитывают только данные, отвечающие заданным условиям.
metrics[] object(Metric) Параметры, затребованные в запросе. В запросе должно быть указано не менее одного, но не более 10 показателей.
metricFilterClauses[] object(MetricFilterClause) Объекты, описывающие условия фильтрации показателей. Комбинируются при помощи логического оператора AND. Учитывают только первый диапазон дат и не учитывают диапазон дат для сравнения. Фильтрация по показателям выполняется после объединения их данных.
filtersExpression string Фильтры по параметрам и показателям, определяющие, какие данные будут получены по запросу. Применяя filtersExpression, укажите параметр или показатель, по которому будет выполнена фильтрация, а затем выражение фильтра. Например, так отбираются обращения от пользователей браузера Firefox: ga:browser=~^Firefox. Подробнее…
orderBys[] object(OrderBy) Порядок сортировки строк на выходе. Строки сравниваются и сортируются по описанному в этом объекте параметру. Один и тот же порядок сортировки применяется ко всем диапазонам дат.
segments[] object(Segment) Условия сегментации данных, полученных по запросу. В запросе может быть описано до четырех сегментов. У всех объектов ReportRequest в методе batchGet должны быть одинаковые значения segments. Чтобы задать условия сегментации, в запрос необходимо включить параметр ga:segment.
pivots[] object(Pivot) Определения сводок. Каждый запрос может содержать не более двух сводок.
cohortGroup object(CohortGroup) Когорта, связанная с запросом. Чтобы описать когорту, в запрос необходимо включить параметр ga:cohort. У всех объектов ReportRequest в методе batchGet должны быть одинаковые значения cohortGroup.
pageToken string Токен для получения следующей страницы с результатами. Строки это страницы возвращаются после добавленного в запрос поля pageToken. Значение поля pageToken должно быть равным значению параметра nextPageToken, возвращенного в ответ на запрос reports.batchGet.
pageSize number Максимальное число строк на страницу (определяется в целях форматирования). Значение строки должно быть неотрицательным. По умолчанию в ответ на запрос возвращается 1000 строк. Analytics Core Reporting API, независимо от заданного ограничения, возвращает не более 100 000 строк на запрос. Если сегментов недостаточно, строк будет возвращено меньше. Например, параметру ga:country (страна) соответствует менее 300 возможных значений. Поэтому при сегментации по странам мира вы получите не более 300 строк, даже если в поле pageSize будет указано большее число.
includeEmptyRows boolean По умолчанию этой переменной присвоено значение false (строки, содержащие только нулевые значения показателей, в ответ не включаются).
hideTotals boolean Когда переменной присвоено значение true, суммарные показатели для всех диапазонов дат исключаются из отчета. Значение по умолчанию – false (суммарные показатели включаются в отчет).
hideValueRanges boolean Когда переменной присвоено значение true, минимальные и максимальные значения показателей скрываются. Значение по умолчанию – false (пограничные значения диапазона включаются в отчет).

DateRange

Перечень всех дат, от начальной до конечной (startDate, startDate + 1 день, …, endDate). Начальная и конечная даты должны быть заданы в формате ISO 8601 YYYY-MM-DD.

JSON-представление

{
  "startDate": string,
  "endDate": string,
}
Название поля Тип Описание
startDate string Начальная дата запроса в формате ГГГГ-ММ-ДД.
endDate string Конечная дата запроса в формате ГГГГ-ММ-ДД.

Sampling

Значения уровня выборки (samplingLevel).

Значение перечисляемого типа Описание
SAMPLING_UNSPECIFIED Если поле samplingLevel не определено, применяется уровень выборки по умолчанию (DEFAULT).
DEFAULT Оптимальное соотношение между скоростью и объемом выборки данных для запроса.
SMALL Быстрая выборка при ее небольшом размере.
LARGE Выборка большого размера, для составления которой может понадобиться много времени.

Dimension

Параметры – это атрибуты данных. Пример: параметр ga:city указывает, в каком городе находился пользователь во время сеанса.

JSON-представление

{
  "name": string,
  "histogramBuckets": [
    string
  ],
}
Название поля Тип Описание
name string Название параметра, по которому подбираются данные, например ga:browser.
histogramBuckets[] string
(int64 format)

Непустые значения параметров должны перечисляться внутри следующих за строкой сегментов в формате int64. Нецелочисленные значения, записанные в строчной форме, заменяются нулями. Сегменты должны быть отсортированы в возрастающем порядке. Минимальные значения включаются в диапазон, а максимальные – нет. Первый сегмент охватывает все значения, находящиеся за нижней границей диапазона, а последний – все значения от верхней границы до бесконечности. Значения, соответствующие условиям сегмента, преобразуются в значения параметров. Например, если вы представите список значений "0, 1, 3, 4, 7", то они будут преобразованы следующим образом:

  • сегмент 1: значения < 0, параметр "<0"
  • сегмент 2: значения [0,1), параметр "0"
  • сегмент 3: значения [1,3), параметр "1-2"
  • сегмент 4: значения [3,4), параметр "3"
  • сегмент 5: значения [4,7), параметр "4-6"
  • сегмент 6: значения >= 7, параметр "7+"

ПРИМЕЧАНИЕ. Если вы хотите изменить данные параметра для представления в форме гистограммы и применить этот параметр для сортировки, используйте тип сортировки HISTOGRAM_BUCKET. В противном случае значения параметра будут отсортированы в словарном (лексикографическом) порядке. В примере ниже показано, как значения сортируются в словарном порядке:

"<50", "1001+", "121-1000", "50-120"

Если применить тип HISTOGRAM_BUCKET, те же значения будут отсортированы следующим образом:

"<50", "50-120", "121-1000", "1001+"

Для представления данных в форме гистограммы необходимо добавить запрос "orderType": "HISTOGRAM_BUCKET".

DimensionFilterClause

Группа фильтров по параметру. Описывает значения операторов, определяющих логическую последовательность применения фильтров.

JSON-представление

{
  "operator": enum(FilterLogicalOperator),
  "filters": [
    {
      object(DimensionFilter)
    }
  ],
}
Название поля Тип Описание
operator enum(FilterLogicalOperator) Оператор для комбинирования нескольких фильтров по параметру. Если оператор не задан, вместо него применяется логическое значение OR.
filters[] object(DimensionFilter) Повторяющийся набор условий фильтров, логическая последовательность которых определяется оператором.

FilterLogicalOperator

Оператор, описывающий логическую последовательность применения фильтров.

Значение перечисляемого типа Описание
OPERATOR_UNSPECIFIED Незаданный оператор. Обрабатывается как логический оператор OR.
OR Логический оператор OR.
AND Логический оператор AND.

DimensionFilter

Фильтр, описывающий порядок фильтрации по параметру.

JSON-представление

{
  "dimensionName": string,
  "not": boolean,
  "operator": enum(Operator),
  "expressions": [
    string
  ],
  "caseSensitive": boolean,
}
Название поля Тип Описание
dimensionName string Параметр, по которому выполняется фильтрация. Имя параметра должно быть указано в поле DimensionFilter.
not boolean Логический оператор NOT. Если оператору присвоено значение true, связанные с ним значения параметров будут исключены из отчета. По умолчанию присваивается значение false.
operator enum(Operator) Описывает порядок сопоставления параметров и выражений. Значение по умолчанию – REGEXP.
expressions[] string Строки и регулярные выражения для сопоставления. В целях сравнения используется только первое значение списка (кроме случаев, когда применяется оператор IN_LIST). Если применяется оператор IN_LIST, фильтрация параметров выполняется по всему списку фильтров, согласно описанию оператора IN_LIST.
caseSensitive boolean Описывает, нужно ли учитывать регистр. Значение по умолчанию – false.

Operator

Поддерживаются несколько разных типов соответствия.

Значение перечисляемого типа Описание
OPERATOR_UNSPECIFIED Незаданный тип соответствия, обрабатываемый как REGEXP.
REGEXP Указывает, что выражение для сопоставления должно обрабатываться как регулярное. Другие типы соответствия обрабатываться как регулярные выражения не будут.
BEGINS_WITH Подбирает значения, начинающиеся с указанного выражения.
ENDS_WITH Подбирает значения, заканчивающиеся указанным выражением.
PARTIAL Подбирает значения, соответствующие подстроке.
EXACT Подбирает значения, точно соответствующие выражению для сопоставления.
NUMERIC_EQUAL

Целочисленные фильтры сравнения. Выражение обрабатывается как строка с целым числом, без учета регистра. Условия невыполнения:

  • Если выражение не задано в формате int64, происходит ошибка.
  • Входные параметры, не заданные в формате int64, не будут соответствовать условиям фильтра.
NUMERIC_GREATER_THAN Численное значение параметра больше сопоставляемого выражения. Информация об ограничениях представлена в описании NUMERIC_EQUALS.
NUMERIC_LESS_THAN Численное значение параметра меньше сопоставляемого выражения. Информация об ограничениях представлена в описании NUMERIC_EQUALS.
IN_LIST

Используется для определения условий фильтрации, принимающих любые значения из списка. Заменяет несколько связанных при помощи логического оператора OR фильтров с точными условиями соответствия, применяемых отдельно к каждой строке ответа. Пример:


expressions: ["A", "B", "C"]

Условиям этого фильтра параметров будут отвечать строки ответа, содержащие любое из трех значений (A, B или C).

Metric

Показатели – это количественные характеристики данных. Например, показатель ga:users сообщает о количестве пользователей за определенный период времени.

JSON-представление

{
  "expression": string,
  "alias": string,
  "formattingType": enum(MetricType),
}
Название поля Тип Описание
expression string Выражение показателя в запросе, состоящее из одного или нескольких показателей и чисел. Допустимые операторы: плюс (+), минус (-), отрицание (унарный минус), знак деления (/), знак умножения (*), скобки, положительные кардинальные числа (0-9) со знаками после запятой (всего не более 1024 знаков). В большинстве случаев выражение показателя в запросе представляет собой простое имя показателя, такое как ga:users (пример: ga:totalRefunds/ga:users). Добавление показателей с разными типами MetricType (например, CURRENCY + PERCENTAGE) может привести к неожиданным результатам.
alias string С помощью псевдонима задается альтернативное название для выражения показателя, которое можно применять в целях фильтрации и сортировки. Описывать это поле необязательно. Однако псевдонимы удобны, если выражение представляет собой перечень показателей, который невозможно использовать в условиях фильтрации и сортировки. Псевдонимы также используются в заголовках столбцов ответа.
formattingType enum(MetricType) Описывает, в каком формате должен быть выражен показатель, например в целочисленном (INTEGER).

MetricType

Типы показателей.

Значение перечисляемого типа Описание
METRIC_TYPE_UNSPECIFIED Тип показателя не задан.
INTEGER Целочисленное значение.
FLOAT Число с плавающей точкой.
CURRENCY Валюта.
PERCENT Проценты.
TIME Время в формате ЧЧ:ММ:СС.

MetricFilterClause

Дескриптор группы фильтров по показателям. Описывает значения операторов, определяющих логическую последовательность применения фильтров.

JSON-представление

{
  "operator": enum(FilterLogicalOperator),
  "filters": [
    {
      object(MetricFilter)
    }
  ],
}
Название поля Тип Описание
operator enum(FilterLogicalOperator) Оператор для комбинирования нескольких фильтров по показателям. Если оператор не задан, вместо него применяется логическое значение OR.
filters[] object(MetricFilter) Повторяющийся набор условий фильтров, логическая последовательность которых определяется оператором.

MetricFilter

Объект, определяющий фильтр по показателям.

JSON-представление

{
  "metricName": string,
  "not": boolean,
  "operator": enum(Operator),
  "comparisonValue": string,
}
Название поля Тип Описание
metricName string Показатель, по которому выполняется фильтрация. Имя показателя должно обязательно быть в объекте metricFilter. Может содержать как выражение показателя, так и ранее заданный для него псевдоним.
not boolean Логический оператор NOT. Если оператору присвоено значение true, связанные с ним значения показателей будут исключены из отчета. По умолчанию присваивается значение false.
operator enum(Operator) Описывает, как должен соотноситься показатель со сравнительным значением. Оператор может принимать значения EQUAL, LESS_THAN или GREATER_THAN (значение по умолчанию – EQUAL). Если значение оператора не указано (IS_MISSING), метод проверяет показатель, игнорируя поле comparisonValue.
comparisonValue string Сравнительное значение.

Operator

Оператор, описывающий различные варианты сравнения.

Значение перечисляемого типа Описание
OPERATOR_UNSPECIFIED Если оператор не задан, используется значение EQUAL.
EQUAL Значение показателя должно быть равным сравнительному значению.
LESS_THAN Значение показателя должно быть меньше сравнительного значения.
GREATER_THAN Значение показателя должно быть больше сравнительного значения.
IS_MISSING Проверка показателя на его наличие, без учета сравнительного значения.

OrderBy

Объект, описывающий порядок сортировки.

JSON-представление

{
  "fieldName": string,
  "orderType": enum(OrderType),
  "sortOrder": enum(SortOrder),
}
Название поля Тип Описание
fieldName string Название поля, по которому выполняется сортировка. По умолчанию применяются сортировка по возрастанию. Например, сортировку можно провести по названию браузера (ga:browser). Можно описывать только одно поле для сортировки (т. е. выражение типа ga:browser, ga:city будет недействительным).
orderType enum(OrderType) Тип сортировки. По умолчанию используется значение VALUE.
sortOrder enum(SortOrder) Порядок сортировки, применяемый к полю.

OrderType

Объект, определяющий применяемый тип сортировки.

Значение перечисляемого типа Описание
ORDER_TYPE_UNSPECIFIED Если тип сортировки не задан, применяется сортировка по значению (VALUE).
VALUE Порядок сортировки по значению данных в столбце. Учитывает только первый диапазон дат.
DELTA Порядок сортировки по разнице значений между двумя диапазонами дат. Применим, только когда используются ровно два диапазона дат.
SMART Порядок сортировки по взвешенному значению данных в столбце. Если данные в столбце представляют собой соотношение n/d, то взвешенные значения будут рассчитаны как (n + totals.n)/(d + totals.d). Применим только для показателей, выражающих соотношение.
HISTOGRAM_BUCKET Порядок сортировки, применяемый только к столбцам параметров с непустыми сегментами гистограмм.
DIMENSION_AS_INTEGER Если значения параметров представляют собой числа фиксированной длины, применяется обычная сортировка. Для чисел переменной длины используется тип сортировки DIMENSION_AS_INTEGER.

SortOrder

Определяет применяемый порядок сортировки.

Значение перечисляемого типа Описание
SORT_ORDER_UNSPECIFIED Если порядок сортировки не задан, применяется сортировка по возрастанию.
ASCENDING Сортировка по возрастанию. Значения поля будут отсортированы в порядке возрастания.
DESCENDING Сортировка по убыванию. Значения поля будут отсортированы в порядке убывания.

Segment

Определения сегментов, используемых для сегментации отчета. Каждый сегмент представляет собой совокупность значений, подобранных на основе данных Google Analytics. Например, в общей совокупности пользователей сегментом могут являться пользователи из определенной страны или города.

JSON-представление

{

  // Union field dynamicOrById can be only one of the following:
  "dynamicSegment": {
    object(DynamicSegment)
  },
  "segmentId": string,
  // End of list of possible types for union field dynamicOrById.
}
Название поля Тип Описание
Сводное поле dynamicOrById. Сегмент может быть определен динамически при помощи объекта DynamicSegment, а также идентификаторов предварительно заданных или пользовательских сегментов. В качестве dynamicOrById может быть использовано одно из следующих полей:
dynamicSegment object(DynamicSegment) Определение динамического сегмента в запросе.
segmentId string Идентификатор предварительно заданного или пользовательского сегмента, например gaid::-3.

DynamicSegment

Динамическое определение сегмента в запросе на основе данных о пользователях, сеансах или обоих этих параметров.

JSON-представление

{
  "name": string,
  "userSegment": {
    object(SegmentDefinition)
  },
  "sessionSegment": {
    object(SegmentDefinition)
  },
}
Название поля Тип Описание
name string Название динамического сегмента.
userSegment object(SegmentDefinition) Пользователи, которые должны быть включены в сегмент.
sessionSegment object(SegmentDefinition) Сеансы, которые должны быть включены в сегмент.

SegmentDefinition

Определение сегмента, представляющее собой набор условий фильтрации (SegmentFilter), объединенных с помощью логического оператора AND.

JSON-представление

{
  "segmentFilters": [
    {
      object(SegmentFilter)
    }
  ],
}
Название поля Тип Описание
segmentFilters[] object(SegmentFilter) Сегмент, определяемый набором условий фильтрации, объединенных с помощью логического оператора AND.

SegmentFilter

Фильтр сегмента описывает, если сегмент определяется простым условием или последовательностью условий. Простое условие сегмента – это ряд пар "параметр-показатель", определяющих условия выбора сеансов и пользователей. Последовательное условие сегмента представляет собой ряд последовательно применяемых простых условий.

JSON-представление

{
  "not": boolean,

  // Union field simpleOrSequence can be only one of the following:
  "simpleSegment": {
    object(SimpleSegment)
  },
  "sequenceSegment": {
    object(SequenceSegment)
  },
  // End of list of possible types for union field simpleOrSequence.
}
Название поля Тип Описание
not boolean

Если присвоено значение true, условия должны соответствовать указанным в дополнении простого или последовательного сегмента. Например, чтобы получить информацию обо всех посещениях из Нью-Йорка, сегмент можно определить следующим образом:


  "sessionSegment": {
    "segmentFilters": [{
      "simpleSegment" :{
        "orFiltersForSegment": [{
          "segmentFilterClauses":[{
            "dimensionFilter": {
              "dimensionName": "ga:city",
              "expressions": ["New York"]
            }
          }]
        }]
      },
      "not": "True"
    }]
  },
Сводное поле simpleOrSequence. Представляет собой определение простого или последовательного сегмента. В поле simpleOrSequence может быть только один из следующих объектов:
simpleSegment object(SimpleSegment) Простое условие сегмента – одна или несколько применяемых совместно пар "параметр-показатель".
sequenceSegment object(SequenceSegment) Последовательность условий – шаги, каждый из которых определяется одной или несколькими парами "параметр-показатель". Шаги объединяются с помощью специальных операторов последовательности.

SimpleSegment

Простое условие сегмента, представляющее собой одну или несколько применяемых совместно пар "параметр-показатель".

JSON-представление

{
  "orFiltersForSegment": [
    {
      object(OrFiltersForSegment)
    }
  ],
}
Название поля Тип Описание
orFiltersForSegment[] object(OrFiltersForSegment) Группы фильтров сегмента, объединяемые при помощи логического оператора AND.

OrFiltersForSegment

Фильтры сегментов в группе OR, объединяемые при помощи логического оператора OR.

JSON-представление

{
  "segmentFilterClauses": [
    {
      object(SegmentFilterClause)
    }
  ],
}
Название поля Тип Описание
segmentFilterClauses[] object(SegmentFilterClause) Список фильтров сегмента, объединяемых при помощи логического оператора OR.

SegmentFilterClause

Спецификатор фильтра, использующийся в определении сегмента. Описывает фильтр данных или фильтр параметров.

JSON-представление

{
  "not": boolean,

  // Union field dimensionOrMetricFilter can be only one of the following:
  "dimensionFilter": {
    object(SegmentDimensionFilter)
  },
  "metricFilter": {
    object(SegmentMetricFilter)
  },
  // End of list of possible types for union field dimensionOrMetricFilter.
}
Название поля Тип Описание
not boolean Соответствует дополнению (!) фильтра.
Сводное поле dimensionOrMetricFilter. Может содержать один из двух следующих объектов:
dimensionFilter object(SegmentDimensionFilter) Фильтр параметров для определения сегмента.
metricFilter object(SegmentMetricFilter) Фильтр показателей для определения сегмента.

SegmentDimensionFilter

Фильтр, описывающий порядок фильтрации по параметру.

JSON-представление

{
  "dimensionName": string,
  "operator": enum(Operator),
  "caseSensitive": boolean,
  "expressions": [
    string
  ],
  "minComparisonValue": string,
  "maxComparisonValue": string,
}
Название поля Тип Описание
dimensionName string Название параметра, для которого применяется фильтр.
operator enum(Operator) Оператор, использующийся для сопоставления параметра и выражений.
caseSensitive boolean Логическое выражение, описывающее необходимость учета регистра. Не учитывается при работе с оператором IN_LIST.
expressions[] string Список выражений, из которого лишь первый элемент применяется ко всем операторам.
minComparisonValue string Минимальное сравнительное значение для типа соответствия BETWEEN.
maxComparisonValue string Максимальное сравнительное значение для типа соответствия BETWEEN.

Operator

Поддерживаются несколько разных типов соответствия.

Значение перечисляемого типа Описание
OPERATOR_UNSPECIFIED Незаданный тип соответствия, обрабатываемый как REGEXP.
REGEXP Указывает, что выражение для сопоставления должно обрабатываться как регулярное. Другие типы соответствия обрабатываться как регулярные выражения не будут.
BEGINS_WITH Подбирает значения, начинающиеся с указанного выражения для сопоставления.
ENDS_WITH Подбирает значения, заканчивающиеся указанным выражением.
PARTIAL Подбирает значения, соответствующие подстроке.
EXACT Подбирает значения, точно соответствующие выражению для сопоставления.
IN_LIST

Используется для определения условий фильтрации, принимающих любые значения из списка. Заменяет несколько связанных при помощи логического оператора OR фильтров с точными условиями соответствия, применяемых отдельно к каждой строке ответа. Пример:


expressions: ["A", "B", "C"]

Условиям этого фильтра параметров будут отвечать строки ответа, содержащие любое из трех значений (A, B или C).

NUMERIC_LESS_THAN

Целочисленные фильтры сравнения. Выражение обрабатывается как строка с целым числом, без учета регистра. Условия невыполнения:

  • Если выражение не задано в формате int64, возникает ошибка.
  • Входные параметры, не заданные в формате int64, не будут соответствовать условиям фильтра.

Численное значение параметра меньше сопоставляемого выражения.

NUMERIC_GREATER_THAN Численное значение параметра больше сопоставляемого выражения.
NUMERIC_BETWEEN Выбирает параметры, численные значения которых находятся в заданном диапазоне (не включая минимальные и максимальные значения диапазона).

SegmentMetricFilter

Фильтр по показателям, используемый в дескрипторе фильтра сегмента.

JSON-представление

{
  "scope": enum(Scope),
  "metricName": string,
  "operator": enum(Operator),
  "comparisonValue": string,
  "maxComparisonValue": string,
}
Название поля Тип Описание
scope enum(Scope) Область действия описывает, на каком уровне определен показатель. Заданная область действия показателя должна быть не уже основной области, определенной в модели данных. Первоначально в качестве области действия определяются пользователи или сеансы, на основе данных о которых производится сегментирование.
metricName string Показатель, по которому осуществляется фильтрация. Имя показателя должно обязательно быть в объекте metricFilter.
operator enum(Operator) Описывает, каким образом должно проводиться сравнение с показателем. Значение по умолчанию – EQUAL.
comparisonValue string Сравнительное значение. Если используется оператор BETWEEN, это значение будет приниматься в качестве минимального.
maxComparisonValue string Максимальное сравнительное значение. Требуется только при использовании оператора BETWEEN.

Scope

Область действия описывает, на каком уровне определен показатель (PRODUCT, HIT, SESSION или USER). Если область шире основной области действия, в ней также могут быть представлены значения показателя. Например, чтобы использовать показатели ga:pageviews и ga:transactions на уровнях SESSION или USER, достаточно добавить их к каждому обращению, связанному с соответствующими сеансами или пользователями.

Значение перечисляемого типа Описание
UNSPECIFIED_SCOPE Незаданная область действия, обрабатываемая по умолчанию как область действия условия (USER или SESSION в зависимости от того, что из этого используется для сегментации).
PRODUCT Область продукта.
HIT Область обращений.
SESSION Область сеансов.
USER Область пользователей.

Operator

Оператор, описывающий различные варианты сравнения.

Значение перечисляемого типа Описание
UNSPECIFIED_OPERATOR Незаданный оператор, обрабатываемый по умолчанию LESS_THAN.
LESS_THAN Значение меньше сравнительного показателя.
GREATER_THAN Значение больше сравнительного показателя.
EQUAL Значение равно сравнительному показателю.
BETWEEN Значение находится в диапазоне между минимальным и максимальным сравнительными показателями (не включая их самих). Для сравнения используются условия LT (less than) и GT (greater than).

SequenceSegment

Последовательность условий – шаги, каждый из которых определяется одной или несколькими парами "параметр-показатель". Шаги объединяются с помощью специальных операторов последовательности.

JSON-представление

{
  "segmentSequenceSteps": [
    {
      object(SegmentSequenceStep)
    }
  ],
  "firstStepShouldMatchFirstHit": boolean,
}
Название поля Тип Описание
segmentSequenceSteps[] object(SegmentSequenceStep) Список шагов последовательности.
firstStepShouldMatchFirstHit boolean Если оператору присвоено значение true, условию первого шага должно соответствовать первое обращение посетителя (в заданном диапазоне дат).

SegmentSequenceStep

Определение последовательности сегментов.

JSON-представление

{
  "orFiltersForSegment": [
    {
      object(OrFiltersForSegment)
    }
  ],
  "matchType": enum(MatchType),
}
Название поля Тип Описание
orFiltersForSegment[] object(OrFiltersForSegment) Последовательность задается при помощи списка или группы фильтров, объединенных с помощью оператора AND.
matchType enum(MatchType) Описывает, если шаг последовательности должен выполняться непосредственно перед или в любом месте перед следующим шагом.

MatchType

Тип соответствия для последовательности.

Значение перечисляемого типа Описание
UNSPECIFIED_MATCH_TYPE Неописанное значение, вместо которого по умолчанию используется оператор PRECEDES.
PRECEDES Оператор, указывающий, что предыдущий шаг должен выполняться ранее следующего.
IMMEDIATELY_PRECEDES Оператор, указывающий, что предыдущий шаг должен выполняться строго перед следующим.

Pivot

Объект, описывающий область сводки в запросе. С помощью сводки табличные данные некоторых отчетов можно сопоставлять по двум зависимым параметрам.

JSON-представление

{
  "dimensions": [
    {
      object(Dimension)
    }
  ],
  "dimensionFilterClauses": [
    {
      object(DimensionFilterClause)
    }
  ],
  "metrics": [
    {
      object(Metric)
    }
  ],
  "startGroup": number,
  "maxGroupCount": number,
}
Название поля Тип Описание
dimensions[] object(Dimension) Список параметров для области сводки. Каждой сводке может быть присвоено не более 4 параметров. Эти параметры учитываются в ограничении на максимальное количество параметров в запросе.
dimensionFilterClauses[] object(DimensionFilterClause) Объекты DimensionFilterClauses объединяются при помощи логических операторов AND. Только данные, включенные во все эти объекты, становятся значениями области сводки. Фильтры параметров можно использовать для ограничения показа столбцов в области сводки. Например, если в качестве параметра области сводки используется ga:browser и вы применяете фильтры, ограничивающие возможные значения ga:browser (допустим, только "IE" или "Firefox"), отобразятся только два столбца с данными по этим браузерам.
metrics[] object(Metric) Показатели сводки. Эти показатели учитываются в ограничении на максимальное количество показателей в запросе.
startGroup number

Количество запрошенных показателей. Если равняется k, в ответ будет получено k столбцов с данными. Например, если вы сопоставляете данные с параметром ga:browser, будет получено k столбцов для Firefox, k столбцов для IE, k столбцов для Chrome и т. д. Группы столбцов при этом будут расположены в порядке убывания суммарного значения для первого из показателей. При совпадении значений этого показателя столбцы сортируются в лексикографическом порядке первого параметра таблицы, затем второго параметра таблицы и т. д. Например, если для браузеров Firefox, IE и Chrome первое значение равняется соответственно 8, 2 и 8, колонки будут отсортированы в порядке "Chrome, Firefox, IE".

Следующее поле определяет, какие группы столбцов из k столбцов будут включены в ответ.

maxGroupCount number Описывает максимальное число групп в результатах выдачи. Значение по умолчанию равно 10, а максимальное – 1000.

CohortGroup

Объект, определяющий группу когорт. Пример:

"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" }
  }]
}
JSON-представление

{
  "cohorts": [
    {
      object(Cohort)
    }
  ],
  "lifetimeValue": boolean,
}
Название поля Тип Описание
cohorts[] object(Cohort) Определение когорты.
lifetimeValue boolean

Оператор, определяющий, должна ли в качестве значений показателя использоваться общая ценность пользователей (привлеченных через различные каналы). Более подробную информацию об этом можно найти в справочных статьях о когортном анализе и общей ценности. Если значение lifetimeValue – false:

  • Значения показателей будут равны тем, что представлены в отчете "Когорты" в веб-интерфейсе.
  • Диапазон дат определения когорты должен быть сопоставим с календарными месяцами и неделями. То есть, если используется ga:cohortNthWeek, то начальная дата (startDate) в определении когорты должна совпадать с воскресеньем, а конечная дата (endDate) – со следующей субботой. В случае ga:cohortNthMonth для startDate используется первый день месяца, а для endDate – последний день месяца.

Если значение оператора – true:

  • Значения показателя будут равны тем, что представлены в отчете "Общая ценность".
  • В отчете "Общая ценность" можно проследить, как изменялись ценность клиента (параметр "Доход") и взаимодействие с ним (параметры "Просмотров приложения", "Достигнутые цели", "Сеансы" и "Длительность сеанса") в течение 90 дней с момента первого посещения.
  • Показатель рассчитывается как интегральное среднее значение на пользователя за временной инкремент.
  • Диапазон дат определения когорты соответствует календарным неделям или месяцам.
  • В качестве viewId должен использоваться идентификатор представления приложения.

Cohort

Объект, определяющий когорту. Когорта – это группа пользователей с общим свойством. Например, это могут быть все пользователи с одинаковой датой первого посещения.

JSON-представление

{
  "name": string,
  "type": enum(Type),
  "dateRange": {
    object(DateRange)
  },
}
Название поля Тип Описание
name string Уникальное имя когорты. Когда не описано, генерируется автоматически в формате cohort_[1234…].
type enum(Type) Тип когорты. В настоящее время поддерживается только один тип – FIRST_VISIT_DATE. Если поле не описано, по умолчанию будет использоваться тип когорты FIRST_VISIT_DATE.
dateRange object(DateRange) Объект для типа FIRST_VISIT_DATE, выбирающий пользователей, дата первого посещения которых пришлась на диапазон между начальной и конечной датами, определенными в этом объекте. Диапазон дат должен соответствовать заданному в когортном запросе. Если задано значение ga:cohortNthDay, диапазон дат должен соответствовать строго одному дню. Значение ga:cohortNthWeek соответствует неделям (с воскресенья по субботу), а ga:cohortNthMonth – календарным месяцам (с первого по последний день календаря). К запросам об общей ценности пользователей подобные ограничения не применяются (указывать диапазон дат в поле reportsRequest.dateRanges не нужно).

Type

Тип когорты.

Значение перечисляемого типа Описание
UNSPECIFIED_COHORT_TYPE Незаданный тип, вместо которого по умолчанию используется FIRST_VISIT_DATE.
FIRST_VISIT_DATE Когорты, формируемые на основе даты первого посещения.

Report

Ответ данных по запросу.

JSON-представление

{
  "columnHeader": {
    object(ColumnHeader)
  },
  "data": {
    object(ReportData)
  },
  "nextPageToken": string,
}
Название поля Тип Описание
columnHeader object(ColumnHeader) Заголовки столбца.
data object(ReportData) Ответ данных.
nextPageToken string Токен страницы для загрузки следующей страницы результатов из списка.

ColumnHeader

Заголовки столбца.

JSON-представление

{
  "dimensions": [
    string
  ],
  "metricHeader": {
    object(MetricHeader)
  },
}
Название поля Тип Описание
dimensions[] string Названия параметров в ответе.
metricHeader object(MetricHeader) Заголовки для показателей в ответе.

MetricHeader

Заголовки для показателей.

JSON-представление

{
  "metricHeaderEntries": [
    {
      object(MetricHeaderEntry)
    }
  ],
  "pivotHeaders": [
    {
      object(PivotHeader)
    }
  ],
}
Название поля Тип Описание
metricHeaderEntries[] object(MetricHeaderEntry) Заголовки для показателей в ответе.
pivotHeaders[] object(PivotHeader) Заголовки для сводок в ответе.

MetricHeaderEntry

Заголовки для показателей.

JSON-представление

{
  "name": string,
  "type": enum(MetricType),
}
Название поля Тип Описание
name string Название заголовка.
type enum(MetricType) Тип показателя (например, INTEGER).

PivotHeader

Заголовки разделов сводок, определенных в запросе.

JSON-представление

{
  "pivotHeaderEntries": [
    {
      object(PivotHeaderEntry)
    }
  ],
  "totalPivotGroupsCount": number,
}
Название поля Тип Описание
pivotHeaderEntries[] object(PivotHeaderEntry) Заголовок отдельного раздела сводки.
totalPivotGroupsCount number Общее число групп в сводке.

PivotHeaderEntry

Заголовки для столбцов показателей, соответствующие показателям, запрошенным в разделе сводок запроса.

JSON-представление

{
  "dimensionNames": [
    string
  ],
  "dimensionValues": [
    string
  ],
  "metric": {
    object(MetricHeaderEntry)
  },
}
Название поля Тип Описание
dimensionNames[] string Названия показателей в полученной в ответе сводке.
dimensionValues[] string Значения показателей в сводке.
metric object(MetricHeaderEntry) Заголовок для показателя в сводке.

ReportData

Данные в отчете.

JSON-представление

{
  "rows": [
    {
      object(ReportRow)
    }
  ],
  "totals": [
    {
      object(DateRangeValues)
    }
  ],
  "rowCount": number,
  "minimums": [
    {
      object(DateRangeValues)
    }
  ],
  "maximums": [
    {
      object(DateRangeValues)
    }
  ],
  "samplesReadCounts": [
    string
  ],
  "samplingSpaceSizes": [
    string
  ],
  "isDataGolden": boolean,
}
Название поля Тип Описание
rows[] object(ReportRow) Каждой уникальной комбинации параметров соответствует одна строка ReportRow.
totals[] object(DateRangeValues) Общее значение, возвращаемое для каждого запрошенного диапазона дат и формата значений в наборе строк, соответствующих запросу. Общее значение для формата рассчитывается как скалярное значение суммы показателей, упомянутых в формате значения. Например, общие значения для 3 / (ga:sessions + 2) рассчитываются как 3 / ((сумма всех релевантных значений ga:sessions) + 2). Общие значения рассчитываются до разбивки на страницы.
rowCount number Число строк, соответствующих запросу.
minimums[] object(DateRangeValues) Минимальное и максимальное значения во всех строках, соответствующих запросу. Равняются нулю, когда оператору hideValueRanges в запросе присвоено значение false или когда число строк (rowCount) равно нулю.
maximums[] object(DateRangeValues) Минимальное и максимальное значения во всех строках, соответствующих запросу. Равняются нулю, когда оператору hideValueRanges в запросе присвоено значение false или когда число строк (rowCount) равно нулю.
samplesReadCounts[] string
(int64 format)
Если результаты составлены на основе выборки, эта строка возвращает общее число проанализированных случаев (по одному на каждый диапазон дат). Если результаты не составлены на основе выборки, это поле определено не будет. Подробнее…
samplingSpaceSizes[] string
(int64 format)
Если результаты составлены на основе выборки, это строка возвращает общее число показанных на главном экране случаев (по одному на каждый диапазон дат). Если результаты не составлены на основе выборки, это поле определено не будет. Подробнее…
isDataGolden boolean Показывает, содержит ли ответ на этот запрос уникальные, т. н. "золотые" данные. Данные называются золотыми, если точно такой же запрос, сделанный позже, не возвращает никаких новых результатов.

ReportRow

Объект строки отчета.

JSON-представление

{
  "dimensions": [
    string
  ],
  "metrics": [
    {
      object(DateRangeValues)
    }
  ],
}
Название поля Тип Описание
dimensions[] string Список запрошенных параметров.
metrics[] object(DateRangeValues) Список показателей по каждому запрошенному диапазону дат (DateRange).

DateRangeValues

Возвращает список показателей по отдельной комбинации диапазона дат и параметра.

JSON-представление

{
  "values": [
    string
  ],
  "pivotValueRegions": [
    {
      object(PivotValueRegion)
    }
  ],
}
Название поля Тип Описание
values[] string Каждому значению соответствует показатель в запросе.
pivotValueRegions[] object(PivotValueRegion) Значения отельной области сводки.

PivotValueRegion

Значения показателей в области сводки.

JSON-представление

{
  "values": [
    string
  ],
}
Название поля Тип Описание
values[] string Значения показателей отдельной области сводки.

Практическое занятие