i-prikot / ya-metrika

PHP библиотека для удобного взаимодействия с Yandex Metrika API

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Yandex Metrika API

Библиотека для удобного взаимодействия с Yandex Metrika API

Latest Stable Version Latest Unstable Version License

Оглавление

  1. Старт
  2. Использование
  3. Автор
  4. Лицензия

Старт

Установка через composer

$ composer require axp-dev/ya-metrika

Получение токена

  1. Переходим на страницу oauth.yandex.ru
  2. Нажимаем "Зарегистрировать новое приложение"
  3. Вписываем название и выбираем "Получение статистики, чтение параметров своих и доверенных счетчиков"
  4. Выбираем "Подставить URL для разработки"
  5. Копируем ID
  6. Переходим по ссылке: https://oauth.yandex.ru/authorize?response_type=token&client_id=ВАШ ID
  7. Подтверждаем запрос

Инициализация

$token = '';
$counter_id = '';
$YaMetrika = new YaMetrika($token, $counter_id);

// Пример использования без форматирвоания
$traffic = $YaMetrika->getPreset('traffic')
                     ->data;

// Пример использования с форматированием
$traffic = $YaMetrika->getPreset('traffic', 30, 15)
                     ->format()
                     ->formatData;
                     
// Пример произвольного запроса
$data = [
    'date1'     => Carbon::yesterday()->format('Y-m-d'),
    'date2'     => Carbon::today()->format('Y-m-d'),
    'metrics'   => 'ym:s:visits',
];
$visits = $YaMetrika->customQuery($data)
                    ->data;

Использование

Для форматирования данных необходимо вызвать format(). Для произвольных запросов данный метод также работает.

Данные по посещаемости

Будут получены данные: визитов, просмотров, уникальных посетителей по дням.

За последние N дней

public function getVisitors($days = 30) : self
Название Тип Описание
$days integer Кол-во дней. По умолчанию 30

За указанный период

public function getVisitorsForPeriod(DateTime $startDate, DateTime $endDate) : self
Название Тип Описание
$startDate DateTime Начальная дата
$endDate DateTime Конечная дата

Самые просматриваемые страницы

За последние N дней

public function getMostViewedPages($days = 30, $limit = 10) : self
Название Тип Описание
$days integer Кол-во дней. По умолчанию 30
$limit integer Лимит записей. По умолчанию 10

За указанный период

public function getMostViewedPagesForPeriod(DateTime $startDate, DateTime $endDate, $limit = 10) : self
Название Тип Описание
$startDate DateTime Начальная дата
$endDate DateTime Конечная дата
$limit integer Лимит записей. По умолчанию 10

Браузеры пользователей

За последние N дней

public function getBrowsers($days = 30, $limit = 10) : self
Название Тип Описание
$days integer Кол-во дней. По умолчанию 30
$limit integer Лимит записей. По умолчанию 10

За указанный период

public function getBrowsersForPeriod(DateTime $startDate, DateTime $endDate, $limit = 10) : self
Название Тип Описание
$startDate DateTime Начальная дата
$endDate DateTime Конечная дата
$limit integer Лимит записей. По умолчанию 10

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

За последние N дней

public function getUsersSearchEngine($days = 30, $limit = 10) : self
Название Тип Описание
$days integer Кол-во дней. По умолчанию 30
$limit integer Лимит записей. По умолчанию 10

За указанный период

public function getUsersSearchEngineForPeriod(DateTime $startDate, DateTime $endDate, $limit = 10) : self
Название Тип Описание
$startDate DateTime Начальная дата
$endDate DateTime Конечная дата
$limit integer Лимит записей. По умолчанию 10

Пользователи по странам и регионам

За последние N дней

public function getGeo($days = 7, $limit = 20) : self
Название Тип Описание
$days integer Кол-во дней. По умолчанию 7
$limit integer Лимит записей. По умолчанию 20

За указанный период

public function getGeoForPeriod(DateTime $startDate, DateTime $endDate, $limit = 20) : self
Название Тип Описание
$startDate DateTime Начальная дата
$endDate DateTime Конечная дата
$limit integer Лимит записей. По умолчанию 20

Пол и возраст пользователей

За последние N дней

public function getAgeGender($days = 30, $limit = 20) : self
Название Тип Описание
$days integer Кол-во дней. По умолчанию 30
$limit integer Лимит записей. По умолчанию 20

За указанный период

public function getAgeGenderForPeriod(DateTime $startDate, DateTime $endDate, $limit = 20) : self
Название Тип Описание
$startDate DateTime Начальная дата
$endDate DateTime Конечная дата
$limit integer Лимит записей. По умолчанию 20

Данные по шаблону

Шаблоны (preset) автоматически задают метрики и группировки, которые необходимы для того или иного отчета. Список всех шаблонов доступен по ссылке - tech.yandex.ru/metrika/../presets-docpage.

За последние N дней

public function getPreset($template, $days = 30, $limit = 10) : self
Название Тип Описание
$template string Название шаблона
$days integer Кол-во дней. По умолчанию 30
$limit integer Лимит записей. По умолчанию 10

За указанный период

public function getPresetForPeriod($template, DateTime $startDate, DateTime $endDate, $limit = 10) : self
Название Тип Описание
$template string Название шаблона
$startDate DateTime Начальная дата
$endDate DateTime Конечная дата
$limit integer Лимит записей. По умолчанию 10

Произвольный запрос

Параметры ids и oauth_token передавать не нужно.

public function customQuery($params) : self
Название Тип Описание
$params array Параметры запроса

Автор

Alexander Pushkarev, e-mail: axp-dev@yandex.com

Лицензия

Основой Yandex Metrika API являет открытый исходный код, в соответствии MIT license

About

PHP библиотека для удобного взаимодействия с Yandex Metrika API

License:MIT License


Languages

Language:PHP 100.0%