API Яндекс Вебмастера: возможности, авторизация и примеры запросов

Обзор API Яндекс Вебмастера 4.1: OAuth, user-id и host-id, сайты, статистика, важные URL, ссылки, переобход и безопасная автоматизация.

API Яндекс Вебмастера: возможности, авторизация и примеры запросов

API Яндекс Вебмастера 4.1 даёт программный доступ к сайтам пользователя, статистике, важным URL, поисковым запросам, ссылкам и отдельным операциям управления. Это REST API с OAuth 2.0. Для большинства методов сначала получают user-id, затем host-id конкретного сайта.

Что можно автоматизировать

API позволяет получать список сайтов, сведения и сводную статистику, данные важных страниц, поисковых запросов и внешних ссылок. Через отдельные методы можно добавлять и удалять сайты, запускать подтверждение прав и работать с очередью переобхода. Набор операций нужно сверять в обзоре ресурсов текущей версии.

Для массовой отправки URL удобна собственная очередь с повторами и журналом. API Index-Now.ru уже объединяет несколько каналов отправки и хранит статусы задач, но факт приёма API всё равно нужно отделять от последующего обхода.

Что подготовить до начала

  • Приложение зарегистрировано в Яндекс OAuth и имеет утверждённый client_id.
  • Запрошены только необходимые scopes, например webmaster:hostinfo и webmaster:verify.
  • Токен хранится в секретах сервера, а не в браузерном коде и репозитории.
  • Определены лимиты, журнал запросов и сценарий обновления токена.
Первый запрос к API
Действия расположены в рабочем порядке

Первый запрос к API

  1. Создайте OAuth-приложение и получите согласие пользователя на нужные права.
  2. Передайте токен в заголовке Authorization: OAuth .
  3. Вызовите GET https://api.webmaster.yandex.net/v4/user и сохраните user-id.
  4. Получите список сайтов через /v4/user/{user-id}/hosts и выберите host-id.
  5. Вызовите нужный ресурс сайта, обработайте HTTP-код, JSON и ограничения метода.

Базовые ресурсы API

Путь строится вокруг пользователя и конкретного host-id.

Сигнал или статусЧто он означаетЧто делать
GET /v4/userВозвращает ID текущего пользователяВыполняйте после авторизации и кешируйте безопасно
GET /hostsСписок доступных сайтовСопоставляйте host-id с каноническим адресом
GET /summaryСводные показатели сайтаХраните дату среза и не смешивайте разные периоды
POST /recrawl/queueДобавляет URL в очередь переобходаСначала проверяйте квоту и валидность URL
Контроль: Webmaster API
Проверяйте результат по данным интерфейса и сайта

Ошибки интеграции

Большинство сбоев связано с токеном, областью прав или неправильным host-id.

ПроблемаВероятная причинаИсправление
401 UnauthorizedТокен отсутствует, истёк или неверенОбновите OAuth и проверьте формат заголовка
403 ForbiddenНет scope или доступа к сайтуЗапросите минимально нужное право и проверьте владельца
404 для ресурсаНеверный user-id, host-id или версия путиПолучайте ID заново из текущего API
429 или квотаСлишком частые запросыДобавьте очередь, backoff и кеширование
Ошибки интеграции
Ошибка в панели — начало диагностики, а не готовый диагноз

Контроль результата и приёмка работы

Перед контрольным прогоном подготовьте всё, от чего зависит результат: Приложение зарегистрировано в Яндекс OAuth и имеет утверждённый client_id; Запрошены только необходимые scopes, например webmaster:hostinfo и webmaster:verify; Токен хранится в секретах сервера, а не в браузерном коде и репозитории; Определены лимиты, журнал запросов и сценарий обновления токена. Проверьте не только основной пример, но и второй URL или ресурс того же типа. В отчёте сохраните время, адрес проверяемого объекта, аккаунт и роль, фактический статус в интерфейсе, а для технической операции — HTTP-код и конечный URL.

GET /v4/user означает: возвращает id текущего пользователя. Контрольное действие: выполняйте после авторизации и кешируйте безопасно. GET /hosts означает: список доступных сайтов. Контрольное действие: сопоставляйте host-id с каноническим адресом. GET /summary означает: сводные показатели сайта. Контрольное действие: храните дату среза и не смешивайте разные периоды. POST /recrawl/queue означает: добавляет url в очередь переобхода. Контрольное действие: сначала проверяйте квоту и валидность url.

Если воспроизводится «401 Unauthorized», проверьте гипотезу «Токен отсутствует, истёк или неверен» и выполните следующее: обновите oauth и проверьте формат заголовка. Если воспроизводится «403 Forbidden», проверьте гипотезу «Нет scope или доступа к сайту» и выполните следующее: запросите минимально нужное право и проверьте владельца. Если воспроизводится «404 для ресурса», проверьте гипотезу «Неверный user-id, host-id или версия пути» и выполните следующее: получайте id заново из текущего api. Если воспроизводится «429 или квота», проверьте гипотезу «Слишком частые запросы» и выполните следующее: добавьте очередь, backoff и кеширование.

Порядок приёмки для «API Яндекс Вебмастера: возможности, авторизация и примеры запросов»: Разделить OAuth-токены пользователей и системные журналы; Не записывать токен в URL, клиентские логи и сообщения об ошибках; Сохранять метод, host-id, код ответа и время, но маскировать секреты; Проверять изменения версии API и модели данных перед обновлением интеграции. Отдельно укажите, что уже подтверждено live-проверкой, а что появится только после следующего обхода или обновления отчёта. Это не даст повторять отправку ради одного статуса в панели и сохранит воспроизводимую историю изменений.

Безопасная эксплуатация

  1. Разделить OAuth-токены пользователей и системные журналы.
  2. Не записывать токен в URL, клиентские логи и сообщения об ошибках.
  3. Сохранять метод, host-id, код ответа и время, но маскировать секреты.
  4. Проверять изменения версии API и модели данных перед обновлением интеграции.

Частые вопросы

Какая версия API актуальна?

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

Можно ли через API гарантировать индексацию?

Нет. API передаёт заявки и данные Вебмастера. Решение об обходе и поиске остаётся у Яндекса.

Нужен ли сервисный аккаунт?

API работает от имени пользователя через Яндекс OAuth. Модель доступа отличается от сервисных аккаунтов Google Cloud.

Что читать дальше

Источники

Факты, названия разделов и ограничения сверены с документацией. Интерфейсы, тарифы и лимиты сервисов могут меняться.