---
title: "Интеграция Яндекс.Метрики: офлайн-конверсии из мессенджеров"
nav_title: "Яндекс.Метрика"
url: https://docs.tuk-tuk.online/integrations/yandex-metrika
markdown: https://docs.tuk-tuk.online/integrations/yandex-metrika.md
section: "Интеграции"
description: "Как подключить Яндекс.Метрику к tuk-tuk.online по OAuth-токену: выбор событий, цели типа «JavaScript-событие», формат офлайн-конверсий, проверка счётчика и целей."
keywords: ["Яндекс Метрика интеграция", "офлайн-конверсии Метрика", "Метрика API токен", "конверсии из Telegram", "цели JavaScript-событие", "Метрика мессенджер", "сквозная аналитика чат-бот", "Метрика OAuth"]
lang: ru
product: tuk-tuk.online
app: https://lk.tuk-tuk.online
api_base: https://back.tuk-tuk.online
---

> [!AI] Кратко
> Интеграция Яндекс.Метрики подключается по номеру счётчика и 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].
> - Кнопка «Проверить» подтверждает доступ к счётчику и перечисляет события без соответствующей цели.
>
> Связанные страницы: https://docs.tuk-tuk.online/integrations, https://docs.tuk-tuk.online/api/webhooks, https://docs.tuk-tuk.online/integrations/notion, https://docs.tuk-tuk.online/dashboard

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

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

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

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

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

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

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

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

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

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

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

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

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

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

1. Откройте раздел [Интеграции](https://lk.tuk-tuk.online/integrations), выберите Яндекс.Метрику и нажмите «Подключить».
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-событие» с точным идентификатором и включённую загрузку офлайн-конверсий; нажмите «Проверить» в окне интеграции |
| Не выбрано ни одного события | Отметьте события в окне интеграции: без этого конверсии не отправляются |
