Инструменты · key

optimizationcheck Оценка качества оптимизации страницы

Оценивает, насколько страница оптимизирована под список запросов: даёт итоговую оценку в процентах и замечания по тегу Title и тексту. Страницу можно передать адресом или готовыми Title и текстом. Метод асинхронный: постановка возвращает report_id. То же в интерфейсе — оценка качества оптимизации.

Режим
асинхронный: report_id
Стоимость
10 + 2 лимита за каждый запрос
Запросов
до 30 уникальных
Тело
форма или JSON

Постановка задачи

POST /api/optimizationcheck

Параметры — в теле формы или JSON (Content-Type: application/json), ключ — в query.

Параметры query и тело формы

  • mode string обязательный
    Что анализировать.
    url
    страницу по адресу
    text
    переданные Title и текст
  • queries array обязательный
    Запросы, под которые оценивается страница: массив queries[] или строка, по запросу на строку. До 30 уникальных, без пустых строк.
  • lr int обязательный
    Регион Яндекса, например 213 — Москва.
  • content_fetch_method string обязательный
    Как загружать страницу. Проверяется в обоих режимах — при mode=text тоже передайте любое из значений.
    browser_js
    браузером с выполнением JavaScript
    browser_no_js
    без выполнения JavaScript
  • url string
    Адрес страницы. Обязателен при mode=url.
  • title string
    Тег Title. Обязателен при mode=text.
  • text string
    Текст страницы. Обязателен при mode=text.

Ответ

  • report_id int
    ID задачи для получения результата.

Получение результата

GET /api/optimizationcheck

Пока задача выполняется, приходит {"error": "In progress", "code": 50, "progress": 40}.

Параметры query

  • report_id int обязательный
    ID задачи из ответа на постановку.

Ответ

  • response.optimization array
    Итоговая оценка и пояснение к ней — строками.
  • response.title_data[] array
    Замечания по Title: type (error, notice и т. п.), text, data_array — данные замечания.
  • response.text_data[] array
    Замечания по тексту, в том же формате.
  • response.requests_summary[] array
    По запросам: query, geo — геозависимый ли, lr, ws — частота по Вордстату. Отсортированы по частоте.
  • response.url_summary object
    Только при mode=url: server_response — код ответа, url_get_params — GET-параметры в адресе, url_linkint — внутренних ссылок на URL, url_age и url_age_in_day — возраст документа, url_len — длина адреса.
  • time string
    Время готовности, Unix timestamp.
  • cost int
    Стоимость задачи в лимитах.

Ошибки

КодСообщениеКогда
-100 tools errors Ошибки параметров — список сообщений в details: неверный mode или content_fetch_method, нет региона или он неизвестен, нет или больше 30 запросов, нет URL или Title с текстом, уже идут больше 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).

Стоимость списывается при постановке: 10 лимитов за анализ и по 2 за каждый запрос — так, задача на 2 запроса стоит 14 лимитов. Одновременно можно держать до 5 задач.

При mode=url страница сначала проверяется на доступность: редиректы допустимы, но если адрес отвечает кодом 400 и выше или не загружается, анализ не выполняется. Проверьте страницу заранее.

Обратная связь и помощь
Если у вас есть идеи, как улучшить данный инструмент или остались вопросы по работе с ним, напишите в нашу службу поддержки, мы обязательно вам поможем.