Введение
API сервиса Яндекс.Метрика позволяет:
- Управлять счетчиками, их настройками и правами доступа, не используя веб-интерфейс.
- Получать информацию о посещаемости сайта и другие данные.
- Формировать отчеты, в том числе с помощью сегментации и параметризации.
Для использования API Яндекс.Метрики необходима авторизация с помощью OAuth-токена.
Структура API
API включает в себя следующие разделы:
- API управления — позволяет управлять счетчиками, целями, фильтрами и другими объектами Яндекс.Метрики (создать счетчик, отредактировать его настройки, создать цель, выдать права доступа и т. п.).
- API отчетов:
- API отчетов — поддерживает все возможности отчетов Яндекс.Метрики: сегментацию, полный набор группировок и метрик, сравнение сегментов и т. п.
- API, совместимый с Google Analytics Core Reporting API — поддерживает все возможности Google Analitics Core Reporting API (v3), но набор группировок и метрик ограничен.
Версионирование
Все разделы API Яндекс.Метрики поддерживают версионирование. У каждой версии есть определенный идентификатор (v1, v2 и т. п.). При выходе новой версии API предыдущая версия продолжает работать для поддержания обратной совместимости.
Если вы начинаете работу с API, используйте самую последнюю версию. Если вы уже используете предыдущие версии API, рекомендуем постепенно переходить на последнюю, т. к. поддержка старых версий ограничена во времени.
При формировании запроса к API всегда указывайте версию, с которой вы хотите работать.
https://api-metrika.yandex.net/stat/v1/data?id=...
https://api-metrika.yandex.net/stat/v2/data?id=...
Ресурсы
API Яндекс.Метрики построен по REST-принципам.
Все, чем можно управлять через API, представлено в виде ресурсов: статистика, список счетчиков, собственно счетчик, цели счетчика и каждая конкретная цель, доступы к счетчику и т. д.
- читать содержимое и текущее состояние ресурса (GET);
- изменять содержимое и состояние и записывать его в ресурс (PUT);
- удалять ресурс (DELETE);
- выполнять специальные действия ― например, добавлять новые элементы в список (POST).
У каждого ресурса есть свой уникальный URL. Все действия выполняются соответствующими методами протокола HTTP на URL'ы ресурсов.
Например, чтобы получить информацию о счетчике, необходимо сделать GET-запрос на URL счетчика. А чтобы создать новый счетчик, необходимо сделать POST-запрос с телом счетчика на URL ресурса «список счетчиков».