seotags Проверка SEO-тегов по списку URL
Загружает страницы из списка и проверяет выбранные теги: Title, Description, H1–H6, Keywords, meta robots и Content-Type, canonical, alternate, теги акцентов. По каждому URL возвращает найденные значения и замечания к ним. Метод асинхронный: постановка возвращает report_id. То же в интерфейсе — проверка SEO-тегов, режим «Список URL»; задача из API видна в истории инструмента и скачивается там в CSV.
- Режим
- асинхронный:
report_id - Стоимость
- за каждый URL — как один запрос Яндекса; итог — в
cost - URL
- до 1000 уникальных
- Тело
- форма или JSON
Постановка задачи
/api/seotags
Параметры — в теле формы или JSON (Content-Type: application/json), ключ — в query.
Параметры query и тело формы
-
urlsarray обязательныйПроверяемые страницы: массивurls[]или строка, по URL на строку. До 1000 уникальных, дубли и пустые строки отбрасываются. Если хоть один URL некорректен, задача не ставится. -
checksarrayКакие теги проверять: массивchecks[]или строка через запятую. Можно передать и флаги формы инструмента —check_title=onи т. п.; выбранное вchecksи во флагах объединяется. Не передано ни того, ни другого — проверяются все теги; передано, но ничего не включено — ошибка. Значения:title,description,h1,h2_h6,keywords,meta_robots,meta_content_type,link_canonical,link_alternate,link_strong(strong и b),em_i(em и i). -
parsing_typestringКак загружать страницы.
Ответ
-
report_idintID задачи для получения результата.
Получение результата
/api/seotags
Пока задача выполняется, приходит {"error": "In progress", "code": 50, "progress": 40}.
Параметры query
-
report_idint обязательныйID задачи из ответа на постановку.
Ответ
-
response.checksstring[]Проверки, выбранные при постановке. -
response.urls[]arrayРезультат по каждому URL в порядке списка.Вложенные поля
-
urlstringПроверенный адрес. -
processedboolfalse— страницу не удалось загрузить или разобрать, тогда вместоtagsприходитerror. -
errorstringТолько приprocessed=false. -
tagsobjectКлючи — выбранные проверки изchecks. У каждой:values[]— найденные значения (value;message— замечание к значению илиnull;tag— для группh2_h6,link_strong,em_i),errors[]— критические ошибки,warnings[]— на что обратить внимание (сюда же — замечания к тегу с пустым содержимым, например Title без текста). Пустойvalues— тег не найден или пуст.
-
-
timestringВремя готовности, Unix timestamp. -
costintСтоимость задачи в лимитах.
Ошибки
| Код | Сообщение | Когда |
|---|---|---|
-100 |
tools errors |
Ошибки параметров — список сообщений в details: нет URL, больше 1000 URL или есть некорректные, неизвестные значения в checks или parsing_type, не включено ни одной проверки, уже идут 5 задач. С errorType: TASK_START_FAIL — задачу не удалось поставить в очередь. |
-51 |
No requests data |
Задача поставлена не методом POST. |
-68, -80…-83 |
Not enough … limits |
Не хватает лимитов; в ответе available и need. |
50 |
In progress |
Задача ещё выполняется; progress — процент готовности. |
-4 |
Access denied |
report_id чужой или от другого инструмента. |
-104…-107, -125 |
Processing error / Limits run out / … |
Задача завершилась ошибкой — см. асинхронные задачи. |
-1, -2 |
Access denied |
Ключ не передан (HTTP 404) или не найден (HTTP 403). |
Стоимость списывается при постановке и совпадает с запуском из интерфейса: за каждый URL — как за один запрос Яндекса по текущей шкале лимитов. Точная сумма задачи — в поле cost результата. Одновременно можно держать до 5 задач.
Нормы, по которым выдаются замечания (длина Title и Description, число заголовков и тегов акцентов), — те же, что у инструмента в интерфейсе.