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

podskazkiyandex Сбор поисковых подсказок Яндекса

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

Режим
асинхронный: report_id
Стоимость
1 лимит за фразу + надбавки за перебор (см. ниже)
Одновременно
до 11 задач на пользователя

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

GET /api/podskazkiyandex

Все параметры передаются в query-строке. Лимиты списываются сразу при постановке.

Параметры query

  • key string обязательный
  • query string обязательный
    Фраза, для которой собираются подсказки. Одна фраза на задачу.
  • lr int обязательный
    Регион Яндекса, например 213 — Москва. Подставляется в запрос к подсказкам.
  • deep int
    Глубина: на втором и третьем уровне подсказки собираются уже для найденных подсказок. Любое другое значение превращается в 1.
    1
    только подсказки к фразе
    2
    плюс подсказки к подсказкам
    3
    три уровня
    По умолчанию 1
  • cb_with_space string
    Дополнительно запросить фразу с пробелом на конце. Каждая фраза дополнительно стоит 1 лимит.
    on
    включить
  • cb_with_numbers string
    Перебрать цифры 0–9 после фразы. Каждая фраза дополнительно стоит 10 лимитов.
    on
    включить
  • cb_with_cyrillic string
    Перебрать буквы русского алфавита после фразы. Каждая фраза дополнительно стоит 33 лимитов.
    on
    включить
  • cb_with_english string
    Перебрать буквы английского алфавита после фразы. Каждая фраза дополнительно стоит 26 лимитов.
    on
    включить
  • stop_list string
    Стоп-слова: подсказки, содержащие любое из них, отбрасываются на всех уровнях. Разделитель — перевод строки \r\n (в URL — %0D%0A).

Ответ

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

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

GET /api/podskazkiyandex

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

Параметры query

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

Ответ

  • request object
    Параметры, с которыми была поставлена задача.
  • response object
    Результат.
    Вложенные поля
    • type_tips array
      Подсказки: phrase — текст, type — тип по-русски (навигационная, новостная, есть в подсказках, перестановка слов и т. п.), type_letter — исходный код типа от Яндекса.
    • count_words object
      Число слов в каждой подсказке; ключи совпадают с индексами type_tips.
    • count_phrases int
      Сколько подсказок собрано.
    • excess_requests_flag bool
      Сбор остановлен из-за ограничения объёма.
    • not_parsed_phrases array
      Фразы, для которых подсказки не собирались.
    • warning_text string
      Предупреждение, если сбор оборвался раньше заданной глубины; иначе пусто.
  • time string
    Время ответа инструмента.
  • cost int
    Расчётная стоимость задачи в лимитах.

Ошибки

КодСообщениеКогда
-50 Not set Не передан query или lr. В теле ответа ключом служит имя параметра: {"query":"Not set"}, {"lr":"Not set"}; для пустого query — {"request":"Not set"}.
-60 To many tasks from one user. Try again later. У пользователя уже больше 10 незавершённых задач этого инструмента.
-68, -80…-83 Not enough … limits Не хватает дневных, часовых, недельных, месячных или годовых лимитов; в ответе есть available и need.
-4 Access denied report_id не найден, принадлежит другому пользователю или другому инструменту.
50 In progress Задача ещё выполняется.
-104…-107, -125 Processing error / Limits run out / … Задача завершилась ошибкой, закончились лимиты, отменена или шла дольше 6 часов.
-1, -2 Access denied Ключ не передан или не найден.

Стоимость

1 лимит за фразу, плюс за каждый включённый перебор: пробел +1, цифры +10, русский алфавит +33, английский +26. Все переборы сразу — 71 лимит. Глубина на стоимость не влияет.

Перед постановкой метод проверяет лимиты без учёта переборов — задача может встать в очередь и затем остановиться с кодом -105, если лимитов не хватило.

Объём

Если на каком-то уровне набирается 10 000 подсказок и больше, сбор останавливается на нём и в warning_text пишется достигнутая глубина. Для нескольких фраз сразу используйте комплексный парсинг подсказок в интерфейсе.

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