Вызов API Яндекс Метрики из браузера
Обращаться ко всем разделам API Яндекс Метрики можно непосредственно из браузера. Способ позволяет:
- обращаться только к адресу Яндекс Метрики, размещенному на домене .net;
- отправлять запросы исключительно на чтение данных (GET).
Для работы с API из браузера необходимо использовать авторизационный токен. Чтобы получить токен:
- Создайте приложение, при этом заполните поля:
- название — можно указать произвольно;
- иконка сервиса — необязательно;
- платформы приложения — выберите веб-сервисы;
- redirect URI — укажите https://oauth.yandex.ru/verification_code;
- доступ к данным — укажите metrika:read.
- Нажмите Создать приложение и скопируйте его ClientID (напротив идентификатора нажмите значок ).
- Добавьте скопированный ClientID в ссылку вида
https://oauth.yandex.ru/authorize?response_type=token&client_id=<идентификатор приложения>
- Перейдите по ссылке и на открывшейся странице скопируйте ваш авторизационный токен.
Внимание. Не выбирайте тип metrika:write, так как непосредственно из браузера нельзя отправлять запросы на изменение данных (POST, PUT и DELETE).
Кроме этого, токен может быть выгружен из браузера и использован для обращений к API без вашего ведома. Поэтому обеспечьте безопасное хранение авторизационного токена, не передавайте его третьим лицам.
Если у вас уже есть авторизационный токен с правами на чтение и запись, для вызова API из браузера получите отдельный токен — только на получение статистики и чтение параметров счетчиков.
Пример использования токена в запросе
В примере для обращения к серверу Метрики используется метод fetch:
fetch(
'https://api-metrika.yandex.net/stat/v1/data?preset=sources_summary&id=44147844', {
headers: {
"Authorization": "OAuth 05dd3dd84ff948fdae2bc4fb91f13e22bb1f289ceef0037"
}
})
.then(r => r.json())
.then(metrikaApiJSON => {
...
})
где 05dd3dd84ff948fdae2bc4fb91f13e22bb1f289ceef0037 — авторизационный токен.