Интеграции

Интеграция Яндекс.Метрики

Кратко

Интеграция Яндекс.Метрики подключается по номеру счётчика и OAuth-токену и отправляет выбранные события кабинета офлайн-конверсиями (multipart CSV, UserId, Unix-время) в цели типа «JavaScript-событие» с идентификаторами dialog.created, message.inbound и другими.

  • Где: «Интеграции» → Яндекс.Метрика → «Подключить»; поля «Номер счётчика» и «OAuth-токен» (y0_…).
  • Предусловия: включены офлайн-конверсии в настройках счётчика; созданы цели «JavaScript-событие» с идентификаторами, равными кодам событий.
  • События: dialog.created, dialog.updated, message.inbound, calendar.event_created, chain.execution_completed, payment.succeeded; выбираются в окне интеграции.
  • Отправка: POST /management/v1/counter/{id}/offline_conversions/upload?client_id_type=USER_ID, multipart/form-data с CSV-файлом UserId,Target,DateTime[,Price,Currency].
  • Кнопка «Проверить» подтверждает доступ к счётчику и перечисляет события без соответствующей цели.
На этой странице

Интеграция отправляет события кабинета в Яндекс.Метрику как офлайн-конверсии. Новый диалог, входящее сообщение, запись на услугу, выполненная цепочка или оплата становятся целями в отчётах Метрики, и реклама оценивается по реальным обращениям, а не по кликам.

Подключение требует номер счётчика и OAuth-токен с правами Метрики.

#Что синхронизируется

Событие кабинетаКод события (идентификатор цели)
Новый диалогdialog.created
Обновление диалога (закрытие, статус)dialog.updated
Входящее сообщениеmessage.inbound
Запись на услугуcalendar.event_created
Цепочка выполненаchain.execution_completed
Успешная оплатаpayment.succeeded

Конверсия уходит с идентификатором посетителя UserId (ID диалога или события) и временем события. Для оплаты добавляются сумма и валюта.

#Что нужно на стороне Метрики

  • Счётчик Метрики, где у вас есть право редактирования.
  • OAuth-токен с правом «Метрика: получение статистики, чтение и изменение параметров счётчиков».
  • Включённая загрузка офлайн-конверсий в настройках счётчика.
  • Цели типа «JavaScript-событие» с идентификаторами из таблицы выше.

#Как подключить

#Получить OAuth-токен

  1. Откройте oauth.yandex.ru и создайте приложение с правами Яндекс.Метрики.
  2. Получите токен для своего аккаунта (ссылка вида oauth.yandex.ru/authorize?response_type=token&client_id=…).
  3. Скопируйте токен: он начинается с y0_.

#Подготовить счётчик

  1. В Метрике откройте «Настройки → Загрузка данных» и включите «Офлайн-конверсии».
  2. В разделе «Цели» создайте цель «JavaScript-событие» для каждого нужного события. Идентификатор цели должен совпадать с кодом события, например dialog.created.

#Подключить в tuk-tuk.online

  1. Откройте раздел Интеграции, выберите Яндекс.Метрику и нажмите «Подключить».
  2. Введите номер счётчика (число из адреса metrika.yandex.ru/dashboard?id=…) и OAuth-токен.
  3. Нажмите «Подключить»: платформа проверит доступ к счётчику методом GET /management/v1/counter/{id}.
  4. В окне интеграции отметьте события, которые нужно отправлять. Список сохраняется сразу.

#Проверить, что работает

  1. Нажмите «Проверить» в блоке «Состояние подключения»: платформа подтвердит доступ к счётчику и перечислит события, для которых в счётчике нет цели «JavaScript-событие».
  2. Создайте тестовый диалог (напишите боту с другого номера): конверсия dialog.created появится в отчёте «Конверсии» в течение нескольких часов.

#Что происходит после подключения

ДействиеВызов Метрики
Проверка счётчикаGET https://api-metrika.yandex.net/management/v1/counter/{id}
Проверка целейGET https://api-metrika.yandex.net/management/v1/counter/{id}/goals
Отправка конверсииPOST https://api-metrika.yandex.net/management/v1/counter/{id}/offline_conversions/upload?client_id_type=USER_ID, тело multipart/form-data с файлом file

Файл конверсии: CSV в формате Метрики.

text
UserId,Target,DateTime
dlg-8f3a…,dialog.created,1788602400

DateTime передаётся как Unix-время в секундах; для оплаты добавляются колонки Price и Currency.

#Ограничения

  • На каждое событие уходит отдельная загрузка; Метрика показывает данные в отчётах в течение 2–3 часов.
  • Конверсия засчитается только при совпадении Target с идентификатором цели «JavaScript-событие»; цели по URL не подходят.
  • Время конверсии всегда «сейчас»: события из прошлого не досылаются.
  • Отправка не блокирует работу кабинета: при сбое Метрики событие пропускается и пишется в лог.

#Частые проблемы

ПроблемаЧто делать
«Неверный OAuth-токен или нет доступа к счётчику»Выпустите токен под аккаунтом с правом редактирования счётчика и правами Метрики
«Счётчик … не найден»Сверьте номер счётчика с адресом страницы Метрики
Конверсии не появляются в отчётахПроверьте цель «JavaScript-событие» с точным идентификатором и включённую загрузку офлайн-конверсий; нажмите «Проверить» в окне интеграции
Не выбрано ни одного событияОтметьте события в окне интеграции: без этого конверсии не отправляются