Ключевые слова для фразы (keywords)
keywords — метод выполняет полнотекстовый поиск по ключевому слову и предоставляет данные по найденным ключевым словам (количество запросов, стоимость за клик, уровень конкуренции).
Пагинация
Для пагинации используйте параметры:
- page_size: количество результатов на страницу (по умолчанию — 100, максимум 1000);
- page: номер страницы (по умолчанию — 1-я страница).
Для фильтрации результатов используйте следующие параметры:
Параметр | Описание | Возможные значения |
queries_from | Минимальное количество запросов в месяц | 0-100000000 |
queries_to | Максимальное количество запросов в месяц | 0-100000000 |
cost_from | Минимальная стоимость за клик | 0-200 |
cost_to | Максимальная стоимость за клик | 0-200 |
concurrency_from | Минимальное значение конкуренции | 1-100 |
concurrency_to | Максимальное значение конкуренции | 1-100 |
minus_keywords | Фильтрация по минус словам (список слов через запятую) | string |
right_spelling | Фильтрация по фразам с неправильным написанием | not_contains - содержит фразы с неправильным написанием; contains - не содержит фразы с неправильным написанием |
Для сортировки результата используйте параметры:
- sort: поле, по которому нужно выполнить сортировку;
- order: направление сортировки (asc — по возрастанию, desc — по убыванию).
Метрики | Описание |
result | Инкапсулирует в себе ответ |
total | Количество найденных ключевых фраз, по которым ранжируется данный домен в топ-100 |
keyword | Заданная ключевая фраза |
cost | Цена за клик, $ |
concurrency | Конкуренция ключевой фразы в PPC (0-100) |
found_results | Количество найденных результатов по ключевой фразе ""keyword"" |
region_queries_count | Частотность ключевой фразы в выбранном регионе |
region_queries_count_wide | Частотность ключевой фразы в широком соответствии |
geo_names | Список топонимов в массиве, если топоним присутствует в ключевой фразе. Если нет — массив пустой. |
social_domains | Социальные домены, которые находятся в топ-10 по заданной фразе |
right_spelling | Рекомендация к исправлению для ключевой фразы с орфографической ошибкой |
keyword_length | Количество слов, разделенных пробелом в ключевой фразе |
lang | Язык |
status_msg | Ответ: "OK" или "Error" сообщает об удачном или неудачном запросе |
status_code | Код ответа "200" — успешный запрос. В других случаях — превышение лимитов (количество одновременных запросов или ограничение по лимитам аккаунта) |
left_lines | Количество оставшихся API строк |
difficulty | Оценка уровня конкуренции по ключевой фразе для продвижения в ТОП-10. Градация сложности рассчитывается от 0 до 100, где: 0-20 - легко; 21-40 - средне; 41-60 - сложно; 61-100 - очень сложно. |
Часть ответа API, за которую снимается 1 лимит:
{
"region_queries_count": 2400,
"types": [
"related_search",
"also_asks",
"a_box_fsnippet"
],
"cost": 0.190875,
"social_domains": [],
"keyword_length": 2,
"concurrency": 26,
"geo_names": [],
"right_spelling": null,
"keyword": "example cv",
"found_results": 571000000,
"lang": "en"
}
{
"result": {
"total": 10736,
"hits": [
{
"region_queries_count": 2400,
"types": [
"related_search",
"also_asks",
"a_box_fsnippet"
],
"cost": 0.190875,
"social_domains": [],
"keyword_length": 2,
"concurrency": 26,
"geo_names": [],
"right_spelling": null,
"keyword": "example cv",
"found_results": 571000000,
"lang": "en"
},
{
"region_queries_count": 12400,
"types": [
"related_search",
"also_asks",
"a_box_fsnippet"
],
"cost": 0.32,
"social_domains": [],
"keyword_length": 2,
"concurrency": 16,
"geo_names": [],
"right_spelling": null,
"keyword": "example xls",
"found_results": 200000000,
"lang": "en"
}
]
},
"status_msg": "OK",
"status_code": 200,
"left_lines": 344488
}
<?php
// This example works on serpstat-sdk only
// https://github.com/SerpstatGlobal/serpstat-sdk
require_once __DIR__ . '/../vendor/autoload.php';
// configure your application
$config = [
'token' => '19666fc1ae1724da1d5ea2f3a99d5f5a',
];
$keywords = 'keywords';
// init client with your serpstat api token
$apiClient = new \Serpstat\Sdk\Core\ApiGuzzleHttpClient($config['token']);
// create instance of any api method class
// list of methods classes in folder src\Methods
$apiMethod = new \Serpstat\Sdk\Methods\KeywordsMethod(
$keywords,
\Serpstat\Sdk\Interfaces\IApiClient::SE_GOOGLE_RU
);
try {
// try call api method
$response = $apiClient->call($apiMethod);
} catch (\Exception $e) {
// catch api error
$response = $e->getMessage();
}
import codecs
import json
import pprint
import urllib.request as urlrequest
from urllib.parse import urlencode
host = 'http://api.serpstat.com/v3'
method = 'keywords'
params = {
'query': 'buy%20laptop', # string for get info
'se': 'g_us', # string search engine
'token': 'ijmiom4f5m34905g03um8342dm04923lre3w', # string personal token
}
api_url = "{host}/{method}?{params}".format(
host=host,
method=method,
params=urlencode(params)
)
try:
json_data = urlrequest.urlopen(api_url).read()
except Exception as e0:
print("API request error: {error}".format(error=e0))
data = json.loads(json_data)
pprint.pprint(data)