Пошук бізнес-лістингів у реальному часі
DataForSEO
SEO, search-engine results, keyword research, backlinks and AI visibility data.
Пошук бізнес-лістингів у реальному часі
Шукає у власному індексі локальних бізнес-лістингів DataForSEO за categories, description, title і location_coordinate — трійкою «широта, довгота, радіус». Повертає total_count, count, offset, offset_token і items, посторінково за токеном. Відповідь обгорнуто в конверт DataForSEO: дані в tasks[0].result, результат у tasks[0].status_code — відхилений запит усе одно повертає HTTP 200. Він читає індекс і відповідає одразу; усе інше тут ставить у чергу живий скрапінг джерела. Починайте з цього й заглиблюйтеся лише там, де це потрібно.
Довідкові ціни
- Тарифікація: вартість відповіді за даними постачальника.
- Довідкова оцінка запиту: USD 0.2428.
- Довідковий множник для клієнта: 1.0. Не застосовуйте його повторно до вже розрахованої суми клієнта.
Лише довідкові метадані, а не котирування для облікового запису, гарантована ціна чи ліміт витрат. Кредити ресурсів — це не кредити Felo. Остаточні списання здійснюються за записами білінгу Felo.
- Тип: array (object | null)[]
- categoriesТип: array string[] | null
категорії бізнесу
необов'язкове поле
вказані категорії використовуються для пошуку бізнес-листингів;
якщо не використовувати це поле, ми повернемо бізнес-листинги, знайдені в вказаному місцеположенні;
можна вказати до 10 категорій - descriptionТип: string | null
опис елемента в SERP
необов'язкове поле
опис бізнес-сутності, для якої збираються результати;
може містити до 200 символів - filtersТип: array (object | null)[] | null
масив параметрів фільтрації результатів
необов'язкове поле
можна додати кілька фільтрів одразу (не більше 8)
між умовами потрібно вказати логічний операторandабоor
підтримуються такі оператори:regex,not_regex,<,<=,>,>=,=,<>,in,not_in,like,not_like,ilike,not_ilike,match,not_match
оператор%можна використовувати зlikeіnot_like, щоб зіставити будь-який рядок із нуля або більше символів
приклад:["rating.value",">",3]
список доступних filters_by можна отримати окремим запитом доhttps://api.dataforseo.com/v3/business_data/business_listings/available_filters
Повний список можливих фільтрів доступний тут.Порожній об'єкт - isТип: boolean | null
_claimed вказує, чи підтверджено бізнес його власником у Google Maps
необов'язкове поле - limitТип: integer | null
максимальна кількість бізнесів, що повертаються
необов'язкове поле
значення за замовчуванням:100
максимальне значення:1000 - locationТип: string | null
_coordinate GPS-координати місцеположення
необов'язкове поле
параметрlocation_coordinateвказується у форматі "широта,довгота,радіус"
максимальна кількість десяткових знаків для "широти" і "довготи": 7
значення "радіуса" вказується в кілометрах (км)
мінімальне значення для "радіуса":1
максимальне значення для "радіуса":100000
приклад:53.476225,-2.243572,200
Докладніше про налаштування параметрів місцеположення в цьому API — у Help Center - offsetТип: integer | null
зміщення в масиві результатів бізнесів, що повертаються
необов'язкове поле
значення за замовчуванням:0
якщо вказати значення10, перші десять сутностей у масиві результатів буде пропущено, а дані буде надано для наступних сутностей
Примітка: цей параметр рекомендується використовувати лише під час отримання до 10 000 результатів
для отримання понад 10 000 результатів використовуйтеoffset_token - offsetТип: string | null
_token токен для наступних запитів
необов'язкове поле
надається в тому самому полі відповіді на кожен запит;
використовуйте цей параметр, щоб уникнути тайм-аутів під час спроби отримати понад 100 000 результатів в одному запиті;
вказавши унікальне значенняoffset_tokenз масиву відповіді, ви отримаєте наступні результати початкового завдання;
значенняoffset_tokenунікальні для кожного наступного завдання
Примітка: якщо в запиті вказаноoffset_token, усі інші параметри мають бути ідентичні попередньому запиту
Докладніше про цей параметр у нашому Help Center - orderТип: array string[] | null
_by правила сортування результатів
необов'язкове поле
для сортування результатів можна використовувати ті самі значення, що й у масивіfilters
можливі типи сортування:asc— результати сортуються за зростаннямdesc— результати сортуються за спаданням
параметр сортування вказується через кому
приклад:["rating.value,desc"]в одному запиті можна задати не більше трьох правил сортування
кілька правил сортування розділяються комою
приклад:["rating.value,desc","rating.votes_count,desc"] - tagТип: string | null
визначений користувачем ідентифікатор завдання
необов'язкове поле
обмеження — 255 символів
цей параметр дає змогу ідентифікувати завдання й зіставити його з результатом
вказане значенняtagви знайдете в об'єктіdataвідповіді - titleТип: string | null
заголовок елемента в SERP
необов'язкове поле
назва бізнес-сутності, для якої збираються результати;
може містити до 200 символів
- Тип: object | null · Response36Afe1097B20_BusinessDataBusinessListingsSearchLiveResponseInfo200
- Тип: number | null Формат: doublecost
загальна вартість завдань, USD
- Тип: integer | nullstatus
_code загальний код стану. Повний список кодів відповіді можна знайти тут.
- Тип: string | nullstatus
_message загальне інформаційне повідомлення. Повний список загальних інформаційних повідомлень можна знайти тут.
- Тип: array (object | null)[] | nulltasks
масив завдань
- Тип: object | null · Response36Afe1097B20_BusinessDataBusinessListingsSearchLiveTaskInfo
- costТип: number | null Формат: double
загальна вартість завдань, USD
- dataТип: object | null
містить ті самі параметри, які ви вказали в POST-запиті
- propertyТип: object | null
Name
- idТип: string | null
ідентифікатор завдання унікальний ідентифікатор завдання в нашій системі у форматі UUID
- pathТип: array (string | null)[] | null
шлях URL
- resultТип: array (object | null)[] | null
масив результатів
- countТип: integer | null Формат: int64
типи елементів
кількість елементів у масивіitems - itemsТип: array (object | null)[] | null
виявлені типи елементів
типи результатів пошукової системи, що трапляються в масивіitems;
можливі типи елементів:business_listing- additionalТип: array (string | null)[] | null
_categories додаткові категорії бізнесу
додаткові категорії Google My Business, які докладніше описують послуги, що надає організація - addressТип: string | null
адреса бізнес-сутності
- addressТип: object | null · Response36Afe1097B20_AddressInfo
_info об'єкт, що містить компоненти адреси бізнес-сутності
- addressТип: string | null
адреса місцевого закладу
- boroughТип: string | null
адміністративна одиниця або район, до якого належить місцевий заклад
- cityТип: string | null
назва міста, у якому розташований місцевий заклад
- countryТип: string | null
_code код країни ISO місцевого закладу
- regionТип: string | null
регіон DMA, до якого належить місцевий заклад
- zipТип: string | null
поштовий індекс місцевого закладу
- attributesТип: object | null · Response36Afe1097B20_BusinessDataAttributesInfo
відомості про послуги у вигляді пунктів, перевірених користувачами;
відомості про послуги бізнес-сутності, показані у вигляді пунктів і на основі відгуків користувачів іcategoryбізнесу- availableТип: object | null
_attributes доступні атрибути
указує атрибути, які може надати бізнес-сутність- propertyТип: array (string | null)[] | null
Name
- unavailableТип: object | null
_attributes недоступні атрибути
указує атрибути, які бізнес-сутність не може надати- propertyТип: array (string | null)[] | null
Name
- categoryТип: string | null
категорія бізнесу
загальна категорія Google My Business, яка найкраще описує послуги, що надає організація - categoryТип: array (string | null)[] | null
_ids глобальні ID категорій
універсальні ID категорій, які не змінюються залежно від вибраної країни - checkТип: string | null
_url прямий URL до результатів пошукової системи
за його допомогою можна переконатися, що ми надали точні результати - cidТип: string | null
- contactТип: array (object | null)[] | null
_info доступні контакти компанії
список контактів для взаємодії з компанією- sourceТип: string | null
джерело даних
- typeТип: string | null
тип елемента
- valueТип: string | null
значення рейтингу
- descriptionТип: string | null
опис елемента в SERP
опис бізнес-сутності, для якої збираються результати - domainТип: string | null
домен бізнес-сутності
- featureТип: string | null
_id - firstТип: string | null
_seen дата й час, коли наш краулер уперше виявив елемент бізнес-лістингу
у форматі UTC: “yyyy-mm-dd hh-mm-ss +00:00”
приклад:2023-03-11 10:04:11 +00:00 - hotelТип: integer | null
_rating - isТип: boolean | null
_claimed показує, чи підтверджена сутність її власником у Google Maps
- lastТип: string | null
_updated _time дата й час останнього оновлення даних
у форматі UTC: “yyyy-mm-dd hh-mm-ss +00:00”
приклад:2023-01-26 09:03:15 +00:00 - latitudeТип: number | null
координата широти місцевих закладів у google maps
приклад:"latitude": 51.584091 - localТип: array (object | null)[] | null
_business _links доступні способи взаємодії з бізнесом
список варіантів взаємодії з бізнесом безпосередньо з результатів пошуку- typeТип: string | null
тип елемента
- logoТип: string | null
URL логотипа, показаного в профілі Google My Business
- longitudeТип: number | null
координата довготи місцевого закладу в google maps
приклад:"longitude": -0.31365919999999997 - mainТип: string | null
_image URL основного зображення в профілі Google My Business
- originalТип: string | null
_title вихідний заголовок елемента
вихідний заголовок, не перекладений Google - peopleТип: array (object | null)[] | null
_also _search пов'язані бізнес-сутності
- cidТип: string | null
- featureТип: string | null
_id - ratingТип: object | null · Response36Afe1097B20_RatingInfo
рейтинг елемента
показник популярності на основі відгуків, що відображається в SERP- ratingТип: integer | null
_max максимальне значення для rating_type
- ratingТип: string | null
_type тип рейтингу тут можна знайти такі елементи: Max5, Percents, CustomMax
- valueТип: number | null Формат: double
значення рейтингу
- votesТип: integer | null Формат: int64
_count кількість відгуків
- titleТип: string | null
заголовок елемента в SERP
назва бізнес-сутності, для якої збираються результати
- phoneТип: string | null
номер телефону бізнес-сутності
- placeТип: string | null
_id унікальний ідентифікатор місця
place id місцевого закладу, представленого в елементі
Докладніше про ідентифікатор — у цій статті довідкового центру - placeТип: object | null
_topics ключові слова, згадані у відгуках клієнтів
містить найпопулярніші ключові слова, пов'язані з продуктами та послугами, згаданими у відгуках клієнтів про бізнес-сутність, і кількість відгуків, у яких згадується кожне ключове слово
приклад:
"place_topics": {
"egg roll": 48,
"birthday": 33
}- propertyТип: integer | null Формат: int64
Name Signed 64-bit integers (long type).
- popularТип: object | null · Response36Afe1097B20_PopularTimes
_times популярні години
інформація про години високого навантаження бізнес-сутності- popularТип: object | null
_times _by _days популярні години
інформація про завантажені години локального закладу для кожного дня тижня- propertyТип: array (object | null)[] | null
Name години роботи в неділю
- popularТип: integer | null
_index індекс популярності відносний прив'язаний до часу індекс популярності від 0 до 100; вище значення відповідає більш завантаженому часу дня
- timeТип: object | null · Response36Afe1097B20_TimeInfo
години в 24-годинному форматі
- hourТип: integer | null
години в 24-годинному форматі
- minuteТип: integer | null
хвилини
- priceТип: string | null
_level рівень цін
може набувати значень:inexpensive,moderate,expensive,very_expensive
якщо інформації про рівень цін немає, значення будеnull - ratingТип: object | null · Response36Afe1097B20_RatingInfo
рейтинг елемента
показник популярності на основі відгуків, що відображається в SERP- ratingТип: number | null Формат: double
_max максимальне значення для rating_type
- ratingТип: string | null
_type тип рейтингу тут можна знайти такі елементи: Max5, Percents, CustomMax
- valueТип: number | null Формат: double
значення рейтингу
- votesТип: integer | null Формат: int64
_count кількість відгуків
- ratingТип: object | null
_distribution розподіл рейтингів бізнес-сутності
об'єкт показує кількість оцінок від 1 до 5 зірок за відгуками користувачів- propertyТип: integer | null Формат: Int64
Name
- servicesТип: array (object | null)[] | null
- categoryТип: string | null
категорія бізнесу
загальна категорія Google My Business, яка найкраще описує послуги, що надає організація - priceТип: object | null · Response36Afe1097B20_PriceInfo
- currencyТип: string | null
валюта зазначеної ціни ISO-код валюти, застосованої до ціни
- currentТип: number | null Формат: double
поточна ціна указує поточну ціну товару або послуги, представлених у результаті
- displayedТип: string | null
_price рядок ціни в результаті вихідний рядок ціни, як надано в результаті
- isТип: boolean | null
_price _range ціна надана як діапазон указує, чи надається ціна як діапазон
- maxТип: number | null Формат: double
_value максимальна ціна максимальна ціна товару або послуги, зазначена в результаті
- regularТип: number | null Формат: double
звичайна ціна указує звичайну ціну товару або послуги без знижок
- snippetТип: string | null
додаткова інформація про бізнес-сутність
- titleТип: string | null
заголовок елемента в SERP
назва бізнес-сутності, для якої збираються результати
- snippetТип: string | null
додаткова інформація про бізнес-сутність
- titleТип: string | null
заголовок елемента в SERP
назва бізнес-сутності, для якої збираються результати - totalТип: integer | null Формат: int64
_photos загальна кількість зображень у профілі Google My Business
- typeТип: string | null
тип елемента
- urlТип: string | null
абсолютний URL бізнес-сутності
- workТип: object | null · Response36Afe1097B20_BusinessWorkHoursInfo
_time відомості про робочі години
інформація про години роботи бізнес-сутності- workТип: object | null · Response36Afe1097B20_WorkHours
_hours години роботи
інформація про робочі години місцевого закладу- currentТип: string | null
_status поточний статус закладу
вказує, чи заклад відчинено чи зачинено - timetableТип: object | null
графік роботи
- propertyТип: array (object | null)[] | null
Name години роботи в неділю
- closeТип: object | null · Response36Afe1097B20_TimeInfo
час закриття
- hourТип: integer | null
години в 24-годинному форматі
- minuteТип: integer | null
хвилини
- openТип: object | null · Response36Afe1097B20_TimeInfo
час відкриття
- hourТип: integer | null
години в 24-годинному форматі
- minuteТип: integer | null
хвилини
- offsetТип: integer | null Формат: int64
Signed 64-bit integers (long type).
- offsetТип: string | null
_token - totalТип: integer | null Формат: int64
_count загальна кількість результатів у нашій базі даних, що відповідають вашому запиту
- resultТип: integer | null Формат: int64
_count кількість елементів у масиві result
- statusТип: integer | null
_code код стану завдання формується DataForSEO, може перебувати в діапазоні 10000-60000 Повний список кодів відповіді можна знайти тут.
- statusТип: string | null
_message інформаційне повідомлення завдання Повний список загальних інформаційних повідомлень можна знайти тут.
- timeТип: string | null
час виконання, секунди
- Тип: integer | null Формат: int64tasks
_count кількість завдань у масиві tasks
- Тип: integer | null Формат: int64tasks
_error кількість завдань у масиві tasks, повернутих з помилкою
- Тип: string | nulltime
загальний час виконання, секунди
- Тип: string | nullversion
поточна версія API
application/json - 400
Не вдалося обробити запит. Перевірте параметри запиту.
- 401
Потрібен дійсний API-ключ Felo.
- 402
Запит неможливо виконати: умови білінгу не виконано.
- 403
Обліковий запис не має дозволу на цю операцію.
- 429
Досягнуто ліміту запитів або витрат.
- 502
Служба не змогла виконати запит.
- 503
API або служба білінгу тимчасово недоступні.
- 504
Час очікування обробки запиту вичерпано.
- default
Відповідь із помилкою; наскрізні відповіді апстріму можуть використовувати формати постачальника
application/json
curl https://openapi.felo.ai/v1/beta/dataforseo/business_data/business_listings/search/live \
--request POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
--data '[
{
"categories": [
"pizza_restaurant"
],
"description": "піца",
"title": "pizza",
"is_claimed": true,
"location_coordinate": "53.476225,-2.243572,10",
"order_by": [
"rating.value,desc"
],
"filters": [
[
"rating.value",
">",
3
]
],
"limit": 3
}
]'
{
"version": null,
"status_code": null,
"status_message": null,
"time": null,
"cost": null,
"tasks_count": null,
"tasks_error": null,
"tasks": [
{
"id": null,
"status_code": null,
"status_message": null,
"time": null,
"cost": null,
"result_count": null,
"path": [
null
],
"data": null,
"result": [
{
"total_count": null,
"count": null,
"offset": null,
"offset_token": null,
"items": [
{
"type": null,
"title": null,
"original_title": null,
"description": null,
"category": null,
"category_ids": [
"[Max Depth Exceeded]"
],
"additional_categories": [
"[Max Depth Exceeded]"
],
"cid": null,
"feature_id": null,
"address": null,
"address_info": "[Max Depth Exceeded]",
"place_id": null,
"phone": null,
"url": null,
"domain": null,
"logo": null,
"main_image": null,
"total_photos": null,
"snippet": null,
"latitude": null,
"longitude": null,
"is_claimed": null,
"attributes": "[Max Depth Exceeded]",
"place_topics": null,
"rating": {
"0": "[",
"1": "M",
"2": "a",
"3": "x",
"4": " ",
"5": "D",
"6": "e",
"7": "p",
"8": "t",
"9": "h",
"10": " ",
"11": "E",
"12": "x",
"13": "c",
"14": "e",
"15": "e",
"16": "d",
"17": "e",
"18": "d",
"19": "]",
"rating_type": "[Max Depth Exceeded]",
"value": "[Max Depth Exceeded]",
"votes_count": "[Max Depth Exceeded]",
"rating_max": "[Max Depth Exceeded]"
},
"hotel_rating": null,
"price_level": null,
"rating_distribution": null,
"people_also_search": [
"[Max Depth Exceeded]"
],
"work_time": "[Max Depth Exceeded]",
"popular_times": "[Max Depth Exceeded]",
"local_business_links": [
"[Max Depth Exceeded]"
],
"contact_info": [
"[Max Depth Exceeded]"
],
"check_url": null,
"last_updated_time": null,
"first_seen": null,
"services": [
"[Max Depth Exceeded]"
]
}
]
}
]
}
]
}