Справочник запросов API IndexNow
С помощью API можно отправить URL одной или нескольких страниц сайта в Яндекс с поддержкой протокола IndexNow.
Отправка одной страницы
GET https://yandex.com/indexnow
? url=<String>
& key=<String>
& [keyLocation=<String>]
|
Параметр |
Тип |
Обязательно |
Описание |
|
|
String |
Да |
Адрес страницы, данные о которой вы хотите передавать. Должен соответствовать стандарту RFC3986. |
|
|
String |
Да |
Ключ для подтверждения прав на сайт. При отправке запроса поисковая система сверяет это значение с содержимым файла. |
|
|
String |
Нет |
Указание на расположение файла с ключом, если он размещен не в корневой директории сайта. |
HTTP-код 200 OK
content-type: application/json
Другие коды ответа:
|
Код |
Причина |
Описание |
|
202 |
Accepted |
Новый ключ ожидает проверки. Если вы уверены в корректности ключа, подождите некоторое время и отправьте несколько других адресов. Если код изменился на 200 OK, ключ проверен и адреса переданы. Если остался код 202, ключ не добавлен в базу после проверки. Подождите еще. |
|
403 |
Invalid key |
Ключ не удалось загрузить или он не подходит к указанным в запросе адресам. |
|
405 |
Method not allowed |
Методы GET и POST поддерживаются. |
|
422 |
Invalid key location |
Параметр |
|
422 |
Invalid url |
В запросе указан неверный URL-адрес или переданный ключ не подходит для его обработки. |
|
422 |
Key must be at least 8 characters |
Ключ включает в себя меньше 8 символов. |
|
422 |
Key must be no longer than 128 characters |
Ключ включает в себя больше 128 символов. |
|
422 |
Key must consist of a-Z0-9 or '-' |
Ключ содержит неподходящие символы. |
|
422 |
No key provided |
В запросе отсутствует параметр |
|
422 |
No url provided |
В запросе отсутствует параметр |
|
429 |
Too Many Requests |
Превышено количество запросов для одного IP-адреса. |
Отправка нескольких страниц
POST https://yandex.com/indexnow
Чтобы передавать информацию о нескольких страницах, используйте формат JSON:
POST /indexnow HTTP/1.1
Content-Type: application/json; charset=utf-8
Content-Length: 286
Host: yandex.com
{
"host": "www.example.com",
"key": "EdD8dkmdNLlxREi2LkhJjYOH2kyQbJqM3cBKT5fX",
"keyLocation": "https://www.example.com/myIndexNowKey63638.html",
"urlList": [
"https://www.example.com/url1",
"https://www.example.com/folder/url2",
"https://www.example.com/url3"
]
}
|
Параметр |
Тип |
Обязательно |
Описание |
|
|
String |
Да |
Адрес вашего сайта. |
|
|
String |
Да |
|
|
|
String |
Нет |
Указание на расположение ключа, если он размещен не в корневой директории сайта. |
|
|
Array |
Да |
Содержит адреса страниц (String), данные о которых вы хотите передавать. В одном запросе можно передавать до 10 000 адресов. |
HTTP-код 200 OK
content-type: application/json
Другие коды ответа:
|
Код |
Причина |
Описание |
|
202 |
Accepted |
Новый ключ ожидает проверки. Если вы уверены в корректности ключа, подождите некоторое время и отправьте несколько других адресов. Если код изменился на 200 OK, ключ проверен и адреса переданы. Если остался код 202, ключ не был добавлен в базу после проверки. Подждите еще. |
|
400 |
Invalid params |
В теле запроса переданы некорректные параметры. |
|
403 |
Invalid key |
Ключ не удалось загрузить или он не подходит к указанным в запросе адресам. |
|
405 |
Method not allowed |
Методы GET и POST поддерживаются. |
|
422 |
Invalid key location |
Параметр |
|
422 |
Invalid url |
В запросе указан неверный URL-адрес или переданный ключ не подходит для его обработки. |
|
422 |
Key must be at least 8 characters |
Ключ включает в себя меньше 8 символов. |
|
422 |
Key must be no longer than 128 characters |
Ключ включает в себя больше 128 символов. |
|
422 |
Key must consist of a-Z0-9 or '-' |
Ключ содержит неподходящие символы. |
|
422 |
No host provided |
В запросе отсутствует параметр |
|
422 |
No key provided |
В запросе отсутствует параметр |
|
422 |
No more than 10000 urls allowed |
Параметр |
|
422 |
No url provided |
В запросе отсутствует параметр |
|
422 |
Url list has to be an array |
Отсутствует параметр |
|
422 |
Url list cannot be empty |
Передан пустой параметр |
|
422 |
Url has to be an array of string |
Параметр |
|
429 |
Too Many Requests |
Превышено количество запросов для одного IP-адреса. |
Вопросы и ответы
Насколько часто можно передавать запросы?
Ограничений на количество запросов нет. Вы можете регулировать их частоту — Яндекс использует алгоритмы, которые препятствуют слишком большому потоку запросов.
Можно ли отправлять один и тот же URL-адрес несколько раз в день?
Мы не рекомендуем оправлять слишком часто один и тот же адрес. Если это необходимо, делайте паузу между отправками 10 минут.
Если страница часто обновляется, используйте другие способы для сообщения об этом Яндексу.
Можно ли отправлять страницы с HTTP-кодом 404 через API?
Да, можно использовать IndexNow, чтобы сообщать о страницах с кодом 404 или 410.
Можно ли передавать страницы с HTTP-кодом 301 или 302 (перенаправление)?
Да, можно передавать адреса с информацией о редиректе или других изменениях.