API: Получение данных Яндекс.Вордстат
API позволяет получить статистику по ключевым словам из сервиса Яндекс.Вордстат через инструмент PR-CY.
Можно собирать частотность по нескольким регионам и типам сразу, похожие и включающие фразы, а также сезонность — помесячную динамику запросов за период.
Перед началом: получите API-ключ в настройках.
Логика работы API
- Создать задачу — отправляем POST-запрос с ключевыми словами, регионами и типами частотности.
- В ответ получаем ID задачи.
- Получить результат — отправляем GET-запрос по ID задачи.
- В ответе возвращаются данные Wordstat.
1. Создание задачи
POST:
https://apis.pr-cy.ru/api/v2.1.0/tool-tasks/
Параметры запроса
| Параметр | Обязательный | Тип | Описание |
|---|---|---|---|
toolName |
✅ | string | Название инструмента: всегда "wordstatChecker" |
keywords |
✅ | array/string | Ключевые слова: массив или строка через запятую. До 1000 фраз |
types |
✅ | array | Типы частотности, можно несколько (см. ниже) |
regions |
✅ | array | Коды регионов Яндекса, до 5 штук. null в массиве — частотность без учёта региона |
engine |
❌ | string | Поисковая система: всегда "yandex" (значение по умолчанию) |
needRelatedPhrases |
❌ | boolean | true — собирать похожие фразы |
needIncludingPhrases |
❌ | boolean | true — собирать популярные фразы, содержащие ключевое слово |
seasonality |
❌ | object | Проверка сезонности: помесячная динамика за период (см. ниже) |
Поддерживаемые значения types
| Значение | Описание |
|---|---|
general |
Общая (без операторов). Пример: купить слона |
quoted |
В кавычках (фраза в кавычках). Пример: "купить слона" |
exact |
Точная (с кавычками и восклицательными знаками перед каждым словом). Пример: "!купить !слона" |
Как узнать код региона
curl --globoff 'https://apis.pr-cy.ru/api/v2.1.0/regions?filter[search]=Москва&page[limit]=5' \
--header 'Api-Key: ВАШ_КЛЮЧ'
В ответе берите поле yandexKey — это и есть код региона для regions (Москва — 213).
Пример запроса
curl 'https://apis.pr-cy.ru/api/v2.1.0/tool-tasks/' \
--header 'Content-Type: application/vnd.api+json' \
--header 'Api-Key: ВАШ_КЛЮЧ' \
--data-raw '{
"data": {
"type": "toolTasks",
"attributes": {
"toolName": "wordstatChecker",
"params": {
"keywords": ["купить слона", "сколько стоит слон"],
"types": ["general", "exact"],
"regions": [213],
"needRelatedPhrases": true,
"needIncludingPhrases": true,
"engine": "yandex"
}
}
}
}'
2. Проверка сезонности
Сезонность — это не отдельный метод, а параметр seasonality того же инструмента. Он возвращает частотность по месяцам за указанный период.
| Поле | Обязательное | Описание |
|---|---|---|
start |
✅ | Начало периода, ГГГГ-ММ-ДД. Дата округляется до первого числа месяца |
end |
✅ | Конец периода, ГГГГ-ММ-ДД. Дата округляется до последнего числа месяца |
device |
❌ | desktop или mobile. Без поля считаем по всем устройствам |
Период — не больше 24 месяцев.
curl 'https://apis.pr-cy.ru/api/v2.1.0/tool-tasks/' \
--header 'Content-Type: application/vnd.api+json' \
--header 'Api-Key: ВАШ_КЛЮЧ' \
--data-raw '{
"data": {
"type": "toolTasks",
"attributes": {
"toolName": "wordstatChecker",
"params": {
"keywords": ["купить елку"],
"types": ["general"],
"regions": [213],
"seasonality": {
"start": "2025-07-01",
"end": "2025-12-31",
"device": "desktop"
}
}
}
}
}'
3. Ответ при создании задачи
API вернёт ID задачи:
{
"data": {
"type": "toolTasks",
"id": "2a67cb477beceb3a677bcf1592214e24",
"attributes": {..}
}
}
4. Получение результатов
GET:
https://apis.pr-cy.ru/api/v2.1.0/tool-tasks/{task_id}?filter[since]=0&include=tests
Пример запроса
curl --location --globoff \
'https://apis.pr-cy.ru/api/v2.1.0/tool-tasks/62b55f1b3f2d430123456789abcdef12?filter[since]=0&include=tests' \
--header 'Content-Type: application/vnd.api+json' \
--header 'Api-Key: ВАШ_КЛЮЧ'
Где:
{task_id}— ID задачи, полученный в шаге 1.filter[since]=0— фильтр по времени (0 = с начала).include=tests— выдаёт подробный результат.
Повторяйте запрос, пока isUpdating не станет false. После этого данные готовы.
Что приходит в ответе
Результат лежит в included[].attributes.results:
| Поле | Что означает |
|---|---|
wordstat |
Частотность: на каждую фразу массив values с полями type, regionId, count |
relatedPhrasesWordstat |
Похожие фразы, если запрашивали |
includingPhrasesWordstat |
Популярные фразы с вхождением, если запрашивали |
seasonality |
Сезонность: на пару «фраза + регион» массив data с полями date (ГГГГ-ММ) и count |
seasonalityMonths |
Список месяцев периода |
seasonalityDevice |
Устройство, по которому считали сезонность |
regionId: null означает частотность без учёта региона.
{
"wordstat": [
{
"keyword": "купить елку",
"values": [
{ "type": "general", "regionId": 213, "count": 5304 }
]
}
],
"seasonality": [
{
"keyword": "купить елку",
"regionId": 213,
"data": [
{ "date": "2025-07", "count": 2278 },
{ "date": "2025-08", "count": 2347 },
{ "date": "2025-09", "count": 2579 },
{ "date": "2025-10", "count": 7997 },
{ "date": "2025-11", "count": 13748 },
{ "date": "2025-12", "count": 26636 }
]
}
],
"seasonalityMonths": ["2025-07", "2025-08", "2025-09", "2025-10", "2025-11", "2025-12"],
"seasonalityDevice": "desktop"
}
5. Сколько спишется лимитов
Одна проверка — это пара «фраза + регион + тип частотности». Сезонность добавляет ещё по одной проверке на каждую пару «фраза + регион».
Стоимость задачи можно узнать заранее, без запуска:
curl 'https://apis.pr-cy.ru/api/v2.1.0/tool-tasks/cost' \
--header 'Content-Type: application/vnd.api+json' \
--header 'Api-Key: ВАШ_КЛЮЧ' \
--data-raw '{
"data": {
"type": "toolTasks",
"attributes": {
"toolName": "wordstatChecker",
"params": {
"keywords": ["купить елку"],
"types": ["general"],
"regions": [213],
"seasonality": { "start": "2025-07-01", "end": "2025-12-31" }
}
}
}
}'
В ответе придёт attributes.cost — сколько лимитов спишется при запуске.
Итого
1. POST /tool-tasks/ toolName "wordstatChecker", params: keywords, types, regions
(опции: needRelatedPhrases, needIncludingPhrases, seasonality) → получили id
2. GET /tool-tasks/{id}?include=tests → ждём isUpdating: false
3. Читаем results:
- wordstat → частотность по типам и регионам
- relatedPhrasesWordstat → похожие фразы
- includingPhrasesWordstat → популярные фразы с вхождением
- seasonality → помесячная динамика
Смежные инструкции
Не нашли нужной информации? Напишите нам в тех.поддержку