complex_queries_analyser Комплексный анализ запросов: набор проверок в одном отчёте
Прогоняет список запросов через выбранный набор проверок — геозависимость и локализацию, витальные ответы, коммерциализацию и интент, кластеризацию по ТОПу, типы сайтов, конкуренцию, частоты Wordstat, позиции сайта — и сводит результат в одну строку на запрос. Может сразу вычистить нецелевые запросы по порогам. Метод асинхронный: постановка отдаёт report_id. В интерфейсе — Комплексный анализ запросов.
- Режим
- асинхронный:
report_id - Запросов
- до 5 000 за задачу
- Стоимость
- сумма по выбранным проверкам, см. ниже
- Одновременно
- одна задача на пользователя
Постановка задачи
/api/complex_queries_analyser
Ключ — в query-строке, всё остальное — в теле формы. Нужна хотя бы одна проверка: geo, intent, gruppirovka, site_type, competition, wordstat_advanced или positions. vital_answer и comm сами по себе не считаются — передавайте их вместе с одной из перечисленных.
Флаги включаются самим присутствием параметра: geo=0 тоже включит проверку. Чтобы выключить — не передавайте параметр.
Параметры query и тело формы
-
keystring обязательныйКлюч API из настроек аккаунта. -
requestsarray обязательныйЗапросы: массивrequests[]или строка с запросами через перевод строки. Дубли и пустые строки отбрасываются. Не больше 5 000. -
lrintРегион Яндекса, например213— Москва. -
search_systemintПоисковая система для анализа выдачи. -
deepintГлубина анализа выдачи. -
geointГеозависимость и степень локализации выдачи. -
vital_answerintЕсть ли в выдаче витальный (официальный) сайт. -
commintКоммерциализация. Включает и колонки интента. -
intentintИнтент: доли отзывов, медиа, словарей, музыки, путешествий и тематические слова. -
intent_comm_aiintУточнить коммерциализацию нейросетью. Работает только приdeep=10вместе сcomm; +10 лимитов за запрос. -
site_typeintТипы сайтов в выдаче по базе размеченных сайтов. -
competitionintКонкуренция по запросу в баллах (ИКС, типы страниц, коммерциализация, агрегаторы в ТОП-10). -
wordstat_advancedintОбщая и точная частота Wordstat по регионуlr. -
gruppirovkaintКластеризация запросов по совпадению URL в ТОПе. -
gruppirovka_methodstringСила связи при кластеризации. Другие значения —hard. -
gruppirovka_user_grouping_powintСтепень группировки, от 1 до 10. -
gruppirovka_generate_urlintСформировать относительный URL из названия группы (транслитом; приwordstat_advanced— из самого частотного запроса группы). -
gruppirovka_home_pagesintПосчитать число главных страниц в ТОПе по запросу. -
gruppirovka_exclude_dataintИсключить из сравнения витальные ответы, новости и агрегаторы. Рекомендуется. -
gruppirovka_exclude_domains_chbxintИсключить из сравнения свой список доменов. -
gruppirovka_exclude_domainsarrayДомены для исключения, до 100. -
positionsintПозиции сайта и релевантные страницы. -
positions_urlstringСайт, позиции которого проверяются. Нужен приpositions. -
positions_ssarrayПоисковые системы:yandex-xml,yandex-mobile,google-desktop,google-mobile. До 6, пары сpositions_lrsпо порядку. -
positions_lrsarrayРегионы Яндекса для каждой системы изpositions_ss, в том же порядке. -
positions_ss_countintСколько пар «система — регион» брать (последние N из списков). Обязателен приpositions: без него не проверится ни одна пара. -
positions_deepintГлубина съёма позиций. -
positions_subdomainsstringУчитывать поддомены сайта. -
positions_force_check_relevantstringОпределить релевантный URL, даже если сайта нет в ТОП-100 (только Яндекс; +1 лимит за запрос на каждую систему Яндекса). -
delete_none_target_queriesintВключить удаление нецелевых запросов. Без него параметрыdel_*ниже не действуют. -
del_implicit_duplicatesintУдалить неявные дубли (одинаковые после лемматизации); с частотами оставляется самый частотный. +5 лимитов. -
del_geointУдалить запросы по геозависимости (нуженgeo). -
del_geo_typestringКакие удалять. -
del_localintУдалить по степени локализации (нуженgeo); пороги —del_local_less,del_local_more. -
del_commerintУдалить по коммерциализации (нуженcomm); пороги —del_commer_less,del_commer_more, в процентах. -
del_frequencyintУдалить запросы с нулевой общей или точной частотой (нуженwordstat_advanced). -
del_frequency_ratiointУдалить по отношению точной частоты к общей, от 0 до 1; пороги —del_frequency_ratio_less,del_frequency_ratio_more. -
exceptions_words_filterintОтбросить запросы со стоп-словами до запуска проверок. -
exceptions_wordsarrayСтоп-слова, до 1 000. Слово сравнивается по лемме;*часть*— по вхождению подстроки.
Ответ
-
report_idintНомер задачи.
Получение результата
/api/complex_queries_analyser
Пока задача выполняется, приходит массив с объектом {"type":"in_progress","code":50}, по возможности с progress в процентах.
Параметры query
-
keystring обязательныйКлюч API из настроек аккаунта. -
report_idint обязательныйНомер задачи из ответа на постановку.
Ответ
Результат лежит на два уровня вглубь: response.response. Колонки, проверка для которых не запускалась, приходят как null; какие колонки заполнены, видно в dictionary.columns.
-
status, msgstringsuccess,completed. -
timestringВремя ответа инструмента. -
costintРасчётная стоимость в лимитах; фактическая может быть немного меньше. -
requestobjectПараметры задачи после нормализации. -
response.response.result[]arrayСтрока на каждый запрос, оставшийся после фильтров.Вложенные поля
-
querystringЗапрос. -
geo, local_powbool|intГеозависимость и степень локализации (geo). -
vitalboolЕсть витальный ответ (vital_answer). -
comintКоммерциализация, % (comm). -
rev, media, lex, music, trav, thematic_wordsnumber|arrayИнтент: доли отзывов, медиа, словарей, музыки, путешествий и тематические слова (intentилиcomm). -
classifiedobjectТипы сайтов и их доли (site_type); названия типов — вdictionary.classified. -
competitionnumberКонкуренция в баллах (competition). -
ws_exact, ws_overallintТочная и общая частота (wordstat_advanced). -
groupintИндекс запроса — названия группы, к которой отнесён запрос (gruppirovka). -
top_url, rel_url, site_pos, morda_count, generated_urlmixedДанные кластеризации: ТОП-10 URL, релевантный URL и позиция сайта, число главных страниц, сгенерированный URL. -
<система_регион>objectДляpositions: по ключу на пару изdictionary.prep_slugs—position(пусто, если вне ТОПа) иrelevant_URL.
-
-
response.response.dictionaryobjectclassified— справочник типов сайтов,prep_slugs— пары «система — регион» для позиций,columns— какие колонки заполнены.
Ошибки
| Код | Сообщение | Когда |
|---|---|---|
-930 |
Keywords empty or is not an array. |
Нет запросов. Ошибки этого метода приходят массивом объектов {type, code, message} — их может быть несколько сразу. |
-931 |
All keywords hit the stop word filter. |
Все запросы отброшены стоп-словами. |
-932 |
Maximum number of keywords 5000 pieces. |
Запросов больше 5 000. |
-933 |
Necessary pass the check parameters to run the tool. |
Не выбрана ни одна проверка (см. описание постановки). |
-51 |
No requests data. |
Задача ставится не POST-запросом. |
-32 |
The process already run. |
Предыдущая задача ещё выполняется; её номер — в report_id. |
-68, -80…-83 |
Not enough … limits |
Не хватает лимитов на расчётную стоимость; объект ошибки — {error, code, available, need}. |
-4 |
Access denied |
report_id не найден или чужой. |
50 |
In progress |
Задача ещё выполняется. |
-104…-107, -125 |
Processing error / Limits run out / … |
Задача завершилась ошибкой, закончились лимиты, отменена или шла дольше 6 часов. |
-1, -2 |
Access denied |
Ключ не передан или не найден (обычный объект {error, code}). |
Стоимость
| Проверка | Лимитов за запрос |
|---|---|
Анализ выдачи: geo, vital_answer, comm, intent, site_type — любые вместе | 1 (один раз за все) |
intent_comm_ai | +10 |
gruppirovka | 2 |
competition | 4 |
wordstat_advanced | 2 |
positions | 1 на каждую пару «система — регион», +1 на каждую систему Яндекса с positions_force_check_relevant |
del_implicit_duplicates | 5 за задачу |
Перед постановкой проверяется, что лимитов хватает на всю расчётную стоимость. Списываются они по ходу работы проверок, поэтому cost в результате — оценка сверху.
Чем отличается от intent
intent — одна проверка: какая выдача по запросу (коммерческая, отзывы, медиа…). Этот метод — конструктор отчёта по семантике: те же доли плюс геозависимость, кластеры, частоты, конкуренция и позиции, с фильтрацией нецелевых запросов.
Время работы
Сначала идут проверки по выдаче, затем параллельно остальные. На тысячах запросов с кластеризацией и позициями задача может идти часами; ожидание результата ограничено 7 часами.