rym: API управления Яндекс.Метрики

Работа с API управления

Для работы с API управления в rym вам доступны следующие функции:

  • rym_get_counters() — список доступных счётчиков Яндекс.Метрики;
  • rym_get_filters() — список настроенных фильтров в счётчике;
  • rym_get_segments() — список настроенных сегмнтов в счётчике Яндекс.Метрики;
  • rym_get_goals() — список настроенных целей в Яндекс.Метрике;
  • rym_get_direct_clients() - данные о клиентах Яндекс.Директа, к кампаниям которых есть доступ у владельца счетчика Метрики;
  • rym_users_grants() — список пользователей, у которых есть доступ к счётчику Яндекс.Метрики, с указанием уровня доступа.
  • rym_add_goal() - создать цель в Яндекс Метрике.
  • rym_add_segment() - создать сегмент в API Яндекс Метрики.

Набор аргументов для всех перечисленных выше функций одинаков:

  • counter — Id счётчика Яндекс.Метрики;
  • login — имя пользователя, под которым доступен нужный счётчик Яндекс.Метрики. Используется при авторизации и при поиске файла, в котором хранятся учётные данные пользователя;
  • token.path — путь к папке, в которой хранится файл с учётными данными.

Описание полей возвращаемых функциями API управления

Списоок полей возвращаемых функцией rym_get_counters

  • id - Номер счётчика Яндекс.Метрики.
  • status - Статус счетчика. Active — Счетчик активен, Deleted — Счетчик удален.
  • owner_login - Логин владельца счетчика.
  • name - Наименование счетчика.
  • code_status - Статус установки кода счетчика. Возможные значения:
    • CS_ERR_INFECTED — не удалось проверить (сайт, на котором установлен счетчик или одно из его зеркал находится в списке зараженных сайтов).
    • CS_NOT_FOUND — Не установлен.
    • CS_ERR_OTHER_HTML_CODE — установлен другой счетчик.
    • CS_ERR_CONNECT — не удалось проверить (ошибка соединения).
    • CS_ERR_TIMEOUT — не удалось проверить (превышено время ожидания).
    • CS_OK — Корректно установлен.
  • site - Полный домен сайта.
  • permission - Уровень доступа к счетчику. Возможные значения:
    • view — гостевой счетчик с уровнем доступа «только просмотр»;
    • edit — гостевой счетчик с уровнем доступа «полный доступ»;
    • own — счетчик, принадлежащий пользователю.
  • type - Тип информера. Возможные значения:
    • ext — расширенный (по умолчанию).
    • simple — простой;
  • gdpr_agreement_accepted - Принято соглашение gdpr.

Списоок полей возвращаемых функцией rym_get_filters

  • id - Идентификатор фильтра.
  • attr - Тип данных, к которым применяется фильтр. Возможные значения:
    • referer — реферер;
    • uniq_id — специальный атрибут для фильтра «не учитывать мои визиты»;
    • client_ip — IP-адрес;
    • title — заголовок страницы;
    • url — URL страницы.
  • type - Отношение или действие для фильтра. Возможные значения:
    • equal — равно;
    • contain — содержит;
    • me — мои посещения, используется только с типом данных attr = uniq_id;
    • start — начинается с;
    • interval — в интервале, используется только с типом данных «IP-адрес» (attr = client_ip);
    • only_mirrors — только сайт и зеркала, используется только для типа данных «URL страницы» (attr = url) и типа фильтра «оставить только трафик» (action = include), а также при условии, что для счетчика заданы зеркала.
  • value - Значение фильтра.
  • action - Тип фильтра. include — оставить только трафик, exclude — исключить трафик.
  • status - Статус фильтра. Возможные значения:
    • active — фильтр используется;
    • disabled — фильтр отключен (без удаления).
  • with_subdomains - Фильтровать по поддоменам.
  • start_ip - Первый IP-адрес диапазона.
  • end_ip - Последний IP-адрес диапазона.

Списоок полей возвращаемых функцией rym_get_segments

  • id - Идентификатор сегмента.
  • counter_id - Идентификатор счетчика.
  • name - Название сегмента.
  • expression - Выражение, которое соответствует значению параметра filters.
  • is_retargeting - Является ли данный сегмент ретаргетинговым
  • segment_source - Источник сегмента. Указывает на способ его создания. Принимает значение api — используются сегменты, созданные с помощью API.

Списоок полей возвращаемых функцией rym_get_goals

  • id - Идентификатор цели.
  • name - Наименование цели.
  • type - Тип цели. Возможные значения.
    • number — просмотр N страниц;
    • action — цель типа событие.
    • step — составная цель;
    • url — совпадение по URL страницы;
  • is_retargeting - Является ли цель ретаргетинговой.
  • conditions - Cписок структур с условиями цели. Состоит из параметров type и url:
    • type - Тип условия. Возможные значения:
      • regexp — удовлетворяет регулярному выражению;
      • contain — содержит;
      • start — начинается с;
      • exact — совпадает;
      • action — специальный тип условия для целей типа action.
    • url - Адрес страницы или части страницы для условия.

Списоок полей возвращаемых функцией rym_get_direct_clients

  • id - Идентификатор клиента Директа.
  • name - Имя клиента, указанное в настройках Директа.
  • chief_login - Логин главного представителя клиента в Директе. Может использоваться для формирования отчета Директ-расходы.

Списоок полей возвращаемых функцией rym_users_grants

  • user_login - Логин пользователя, которому выдано разрешение на управление счетчиком. Параметр содержит пустую строку, если к статистике счетчика предоставлен публичный доступ (perm = public_stat)
  • perm - Уровень доступа. Возможные значения:
    • view — только просмотр;
    • edit — полный доступ;
    • public_stat — публичный доступ к статистике.
  • created_at - Дата предоставления доступа в формате YYYY-MM-DD’T’hh:mm:ssZ.
  • comment - Произвольный комментарий. Количество символов не должно превышать 255.
  • partner_data_access - Является и доступ партнёрским.

Пример работы с API управления

При использовании приведённого нже примера замените ”ваш логин”* на логин пользователя Яндекса, под которым есть доступ к нужному вам счётчику Яндекс.Метрики, вместо 000000000 введите номер нужного вам счётчика.*

library(rym)

# список доступных счётчиков
my_counters <- rym_get_counters(login      = "ваш логин",
                                token.path = "metrica_token")

# список целей
my_goals <- rym_get_goals(counter    = 000000000,
                          login      = "ваш логин",
                          token.path = "metrica_token")

# список фильтров
my_filter <- rym_get_filters(counter    = 000000000,
                             login      = "ваш логин",
                             token.path = "metrica_token")

# список сегментов
my_segments <- rym_get_segments(counter    = 000000000,
                                login      = "ваш логин",
                                token.path = "metrica_token")

# список клиентов Яндекс Директ
my_clients <- rym_get_direct_clients(counters="000000000,111111111",
                                     login = "my_login",
                                     token.path = "metrica_token")

# список пользователей
users <- rym_users_grants(counter    = 000000000,
                          login      = "ваш логин",
                          token.path = "metrica_token")

Создание целей в Яндекс Метрике

Для создания цели в Яндекс Метрике используйте функцию rym_add_goal().

Аргументы

  • name - Наименование цели.
  • type - Тип цели.
    • Возможные значения
      • number — просмотр N страниц;
      • action — цель типа событие.
      • step — составная цель;
      • url — совпадение по URL страницы;
  • is.retargeting - Является ли цель ретаргетинговой
  • flag - Тип цели для клиентов Яндекс.Маркета.
    • Возможные значения
      • basket — «корзина», страница посещения корзины;
      • order — «заказ», страница подтверждения заказа.
  • conditions - Cписок структур с условиями цели.
    • type - Тип условия.
      • regexp — удовлетворяет регулярному выражению;
      • contain — содержит;
      • start — начинается с;
      • exact — совпадает;
      • action — специальный тип условия для целей типа action.
    • url - Адрес страницы или части страницы для условия.
rym_add_goal(123456789, 
             name = 'first_goal',
             type = 'action',
             conditions = list(type = 'exact', 
                               url = 'rym-first-goal'),
             login = 'your_login')

Создание сегментов в Яндекс Метрике

Сегмент можно создать с помощью функции rym_add_segment(). Созданный с помощью API сегмент не отображается в веб-интерфейсе Яндекс.Метрики.

Аргументы

  • name - Название сегмента
  • expression - Выражение, которое соответствует значению параметра filters.
rym_add_segment(
     counter = 123456789, 
     name = "my_segment",
     expression = "ym:s:trafficSource=='organic' AND ym:s:isNewUser=='Yes'",
     login = "your_login")