Справочное руководство по Measurement Protocol

Обзор

Отправка данных в Google Analytics с использованием протокола измерений состоит из двух частей:

  1. Транспорт – куда и как вы отправляете данные
  2. Полезная нагрузка — данные, которые вы отправляете

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

Транспорт

Конечная точка URL-адреса

Вы отправляете данные с использованием протокола измерений, отправляя запросы HTTP POST к следующей конечной точке:

https://www.google-analytics.com/mp/collect

Чтобы отправить событие, выполните следующий POST запрос:

POST /mp/collect HTTP/1.1
HOST: www.google-analytics.com
Content-Type: application/json
<payload_data>

Коды ответов

Протокол измерения всегда возвращает код состояния 2xx , если HTTP запрос был получен. Протокол измерения не возвращает код ошибки, если полезные данные были неверными, или если данные в полезных данных были неверными или не были обработаны Google Analytics.

Полезная нагрузка

Данные отправляются в Google Analytics с использованием данных протокола измерений в двух частях:

  1. Параметры запроса
  2. Тело JSON POST

параметры запроса

Имя параметра Описание

api_secret

Необходимый. API Secret , создаваемый через пользовательский интерфейс Google Analytics.

Чтобы создать новый секрет, перейдите в интерфейс Google Analytics к:
Администратор > Потоки данных > выберите поток > Протокол измерений > Создать.

Мы рекомендуем вам сохранить их конфиденциальными для вашей организации. Если вы развертываете протокол измерения на стороне клиента, вам следует регулярно менять api_secret , чтобы избежать чрезмерного спама.

Тело сообщения в формате JSON

Ключ Тип Описание

user_id

string

Необязательный. Уникальный идентификатор пользователя. Дополнительную информацию об этом идентификаторе см. в разделе User-ID для кросс-платформенного анализа .

timestamp_micros

number

Необязательный. Временная метка Unix (в микросекундах), указывающая время, связанное с событием. Это значение следует устанавливать только для записи событий, произошедших в прошлом. Это значение можно переопределить с помощью user_property или временных меток событий. События могут быть датированы не более чем тремя календарными днями в зависимости от часового пояса объекта.

user_properties

object Необязательный. Свойства пользователя для измерения. Дополнительные сведения см. в разделе Свойства пользователя .
object Необязательный. Устанавливает настройки согласия для запроса. Дополнительную информацию см. в разделе «Согласие» .

non_personalized_ads

boolean Необязательный. Установите значение true , чтобы указать, что данные пользователя не должны использоваться для персонализированной рекламы.

events[]

array Необходимый. Массив элементов событий. По одному запросу можно отправить до 25 событий. См. справочник событий для всех допустимых событий.

events[].name

string Необходимый. Название события. См. справочник событий для всех вариантов.

events[].params

object Необязательный. Параметры события. См. «События» , чтобы узнать предлагаемые параметры для каждого события.

Атрибут consent настраивает типы и состояния согласия . Если вы не укажете consent , Google Analytics будет использовать настройки согласия из соответствующих онлайн-взаимодействий для экземпляра клиента или приложения.

Ключ Тип Описание

ad_user_data

string

Необязательный. Устанавливает согласие на отправку пользовательских данных из событий запроса и свойств пользователя в Google в рекламных целях.

Должно быть либо GRANTED , либо DENIED .

ad_personalization

string

Необязательный. Устанавливает согласие на персонализированную рекламу для пользователя.

Должно быть либо GRANTED , либо DENIED .

Пользовательские параметры

В дополнение к предписанным параметрам вы можете включать в полезную нагрузку протокола измерений настраиваемые параметры на уровне пользователя, события и элемента .

  • Пользовательские параметры можно включить в объект user_properties полезных данных.
  • Пользовательские параметры в области событий можно включить в events[].params полезных данных.
  • Пользовательские параметры на уровне элемента можно включить в массив items для каждого события.

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

Зарезервированные имена

Зарезервированные названия событий

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

  • ad_activeview
  • ad_click
  • ad_exposure
  • ad_query
  • ad_reward
  • adunit_exposure
  • app_clear_data
  • app_exception
  • app_install
  • app_remove
  • app_store_refund
  • app_update
  • app_upgrade
  • dynamic_link_app_open
  • dynamic_link_app_update
  • dynamic_link_first_open
  • error
  • firebase_campaign
  • firebase_in_app_message_action
  • firebase_in_app_message_dismiss
  • firebase_in_app_message_impression
  • first_open
  • first_visit
  • in_app_purchase
  • notification_dismiss
  • notification_foreground
  • notification_open
  • notification_receive
  • notification_send
  • os_update
  • session_start
  • user_engagement

Зарезервированные имена параметров

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

  • firebase_conversion

Кроме того, имена параметров не могут начинаться с:

  • _ (underscore)
  • firebase_
  • ga_
  • google_
  • gtag.

Зарезервированные имена свойств пользователей

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

  • first_open_time
  • first_visit_time
  • last_deep_link_referrer
  • user_id
  • first_open_after_install

Кроме того, имена пользовательских свойств не могут начинаться с:

  • _ (underscore)
  • firebase_
  • ga_
  • google_