Передача офлайн-конверсии в Яндекс.Метрика через API

Содержание:


Рассмотрим вариант передачи офлайн конверсий в Яндекс.Метрику, например, посредством получения входящего вебхука от Вашего сайта или приложения.


1. Подготовка подключения


Перейдите в раздел "Подключения", нажмите "+", выберите тип подключения OAuth 2.0, укажите название и нажмите кнопку "Начать настройку":


Передача офлайн-конверсии в Яндекс.Метрика через API


Скопируйте полученный URL (1) из блока "URL для редиректа после авторизации":


Передача офлайн-конверсии в Яндекс.Метрика через API


2. Создание приложения в Яндекс


Перейдите на страницу создания нового приложения: https://oauth.yandex.ru/client/new


Введите название сервиса, установите галочку в пункте "Веб-сервисы" (1) и в поле ввода URL укажите ссылку, полученную в п. 1 (1), далее в блоке "Доступ к данным" (2) выберите "Загрузка офлайн данных", после промотайте внизу страницы и нажмите кнопку "Создать приложение":


Передача офлайн-конверсии в Яндекс.Метрика через API


Скопируйте Client ID (3) и Client Secret (4):


Передача офлайн-конверсии в Яндекс.Метрика через API


На стороне Яндекс.Метрике перейдите в раздел "Настройки -> Загрузка данных" и нажмите кнопку "Включить учет офлайн-конверсий (5)":


Передача офлайн-конверсии в Яндекс.Метрика через API


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


3. Настройка подключения


Возвращаемся в подключение, созданное в п. 1 и вводим следующие данные:


Передача офлайн-конверсии в Яндекс.Метрика через API


В поле "URL авторизации" (1):


https://oauth.yandex.ru/authorize?response_type=code&client_id={{ client_id }}

URL для получения Access Token (2):


https://oauth.yandex.ru/token

Поля запроса (3):


grant_type: authorization_code
code: {{ code }}

Заголовки запроса (4):


Authorization: Basic {{ base64(client_id~":"~client_secret) }}

Далее переходим к следующим шагам:


Передача офлайн-конверсии в Яндекс.Метрика через API


Заголовки запроса (5):


Authorization: OAuth {{ access_token }}

URL для обновления токена (6):


https://oauth.yandex.ru/token

Поля запроса (7):


grant_type: refresh_token
refresh_token: {{ refresh_token }}

Заголовки запроса (8):


Authorization: Basic {{ base64(client_id~":"~client_secret) }}

Далее нажмите "Сохранить и авторизоваться". На открывшейся странице нажмите кнопку "Войти как Username":


Передача офлайн-конверсии в Яндекс.Метрика через API


Если все прошло успешно, Вы увидите статус "Подключено":


Передача офлайн-конверсии в Яндекс.Метрика через API


4. Создание сценария


Логика передачи офлайн-конверсий может быть разной, быть как составной частью других сценариев, так и быть самостоятельным сценарием - в данном примере мы рассматирваем последний вариант, поэтому первым шагом создаем Webhook, а вторым уже непосредственно передача конверсий в Метрику через HTTP:


Передача офлайн-конверсии в Яндекс.Метрика через API


URL запроса (1):


https://api-metrika.yandex.ru/management/v1/counter/xxx/offline_conversions/upload?client_id_type=USER_ID

- вместо xxx введите номер Вашего счетчика в Яндекс.Метрике.


Укажите тип данных (2): text/plain


В окне поля запроса (3) введите следующие данные:


--------------------------csv_file_data
Content-Disposition: form-data; name="file"; filename="data.csv"
Content-Type: text/csv

UserId,Target,DateTime,Price,Currency
133591247640966458,partner,1481718166,123.45,RUB
133591247640966458,partner,1481718142,678.90,RUB
--------------------------csv_file_data--

Здесь на примере первой строки с данными: "133591247640966458" является ID клиента, "partner" это название цели, заданное в Яндекс.Метрике, "1481718166" время в формате Unix Timestamp, "123.45" ценность цели и "RUB" валюта.


В заголовках запроса (4) укажите:


Content-Type: multipart/form-data; boundary=------------------------csv_file_data

В поле "Подключение" (5) выберите подключение, созданное в п. 1. Запустите сценарий (6) и проверьте корректность передачи данных в логе.

Попробуйте бесплатно

При регистрации Вы бесплатно получаете 14 дней и 1.000 запусков сценариев:

Нажимая кнопку «Регистрация» Вы принимаете условия лицензионного соглашения и даете согласие на обработку своих персональных данных. Если у Вас уже есть аккаунт, войдите в систему. Сайт защищен технологией reCAPTCHA и к нему применяются Google политика конфиденциальности и условия использования.
  • Техподдержка

    Ответим на Ваши вопросы, подскажем по настройкам модулей.

  • Доступные тарифы

    От 1000р. в месяц за полный функционал без ограничений.

  • Безопасность

    Сервера расположены на территории РФ, а все подключения дополнительно шифруются.