API Yelp Отзывы
Состояние API
- Состояние за 24 ч
- Норма
- Среднее время за 24 ч
- —
- Стабильно / норма
- Доступно
- Ограничено
- Почти недоступно
Последние 24 часа
Последние 30 дней
Читайте отзывы Yelp об одной компании, по 10 на странице. Для каждого отзыва возвращаются текст, оценка, дата, автор, число фото и голоса «Полезно», «Смешно» и «Круто». Для следующей страницы передайте next_page_token обратно как page_token. Токены действуют 24 часа.
Цена: $1.39 за 1 000 запросов ($0.001389 за вызов). Неудачные вызовы и пустые результаты не оплачиваются. Синхронный режим. Для долгих задач добавьте в тело запроса "mode": "async", получите job_id и опрашивайте статус.
Промпт для ИИ
Помогите мне написать скрипт для сбора данных через эндпоинт EveryInfra Yelp Отзывы (yelp/reviews).
Как работает эндпоинт:
- Запрос: POST https://api.everyinfra.com/api/v1/social с заголовком Authorization: Bearer <API key>. Читайте ключ из переменной окружения EVERYINFRA_API_KEY и никогда не прописывайте его в коде.
- В теле запроса укажите platform: yelp и action: reviews, а параметры передайте в params.
- Обязательные параметры:
- url: URL компании на Yelp с сегментом /biz/ в пути для действий profile и reviews, которые возвращают метаданные компании или отзывы пользователей. Ссылки на профили пользователей не поддерживаются.
- Необязательные параметры:
- page_token: Токен пагинации: чтобы получить следующую страницу, передайте next_page_token из предыдущего ответа; для первой страницы не указывайте его. Остальные параметры не меняйте.
- limit: Максимальное число записей в этом вызове, целое число от 1 до 10. Если параметр не указан, применяется значение по умолчанию; вызов может вернуть меньше записей. Значения выше максимума принимаются, но ограничиваются им. (по умолчанию: 10)
- Возвращает список записей. Основные поля каждой записи: id, text, rating, rating_scale, posted_at, author_name, useful_count, photo_count, business_name, business_url, funny_count, cool_count.
- Пример тела запроса:
{
"platform": "yelp",
"action": "reviews",
"params": {
"url": "https://www.yelp.com/biz/blue-bottle-coffee-san-francisco"
}
}
- Цена: $1.39 за 1 000 запросов; неудачные и пустые результаты не оплачиваются.
- Для десятков или сотен целей добавьте в тело запроса "mode": "async": вы сразу получите job_id и сможете опрашивать GET https://api.everyinfra.com/api/v1/jobs/{job_id}, чтобы получить результат.
- При ответе 422 исправьте запрос, используя предложенные в ошибке имена параметров и допустимые значения; при ответе 429 или 503 подождите указанное в Retry-After время и повторите попытку.
Прежде чем писать код, спросите меня, какие цели мне нужны, сколько их будет, какие поля мне нужны и в каком формате вывести результат; затем согласуйте со мной план и примерную стоимость.Параметры запроса
| Имя | Расположение | Тип | Обязательный | По умолчанию | Описание |
|---|---|---|---|---|---|
Authorization | header | string | Да | - | Укажите Bearer, а после него — ваш API-ключ. Создайте ключ в консоли; никогда не указывайте его в URL и не храните в репозитории кода. |
platform | body | string | Да | yelp | Идентификатор платформы, фиксированное значение. |
action | body | string | Да | reviews | Идентификатор возможности, фиксированное значение. |
url | body.params | string | Да | - | URL компании на Yelp с сегментом /biz/ в пути для действий profile и reviews, которые возвращают метаданные компании или отзывы пользователей. Ссылки на профили пользователей не поддерживаются. |
page_token | body.params | string | Нет | - | Токен пагинации: чтобы получить следующую страницу, передайте next_page_token из предыдущего ответа; для первой страницы не указывайте его. Остальные параметры не меняйте. Токены действуют 24 часа, каждая страница — это один вызов. |
limit | body.params | integer (1–10) | Нет | 10 | Максимальное число записей в этом вызове, целое число от 1 до 10. Если параметр не указан, применяется значение по умолчанию; вызов может вернуть меньше записей. Значения выше максимума принимаются, но ограничиваются им. |
Примеры кода
curl -X POST 'https://api.everyinfra.com/api/v1/social' \
-H "Authorization: Bearer $EVERYINFRA_API_KEY" \
-H 'Content-Type: application/json' \
--data-raw '{
"platform": "yelp",
"action": "reviews",
"params": {
"url": "https://www.yelp.com/biz/blue-bottle-coffee-san-francisco"
}
}'Спецификация OpenAPI (JSON)Примеры читают ключ из переменной окружения EVERYINFRA_API_KEY; скопированный код никогда не содержит ваш ключ.
Пример ответа
Получено September 26, 2026 at 08:56 (UTC) вызовом этого API с параметрами из примера кода выше. results и count — реальный ответ этого вызова, из которого удалены персональные данные (имена, никнеймы, аватары, ссылки на профили, контакты); в списке оставлены первые 2. id, billing и quota меняются при каждом вызове, поэтому показана только их структура.
{
"id": "req_…",
"platform": "yelp",
"action": "reviews",
"results": [
{
"text": "Love Blue Bottle. This one was a bit tricky to find. It's tucked in around the corner but we'll worth it. Very friendly staff and very fast. True coffee lovers really dig BB.",
"rating": 5,
"posted_at": "Mar 25, 2023",
"useful_count": 0,
"funny_count": 0,
"cool_count": 0,
"photo_count": 1,
"business_name": "Blue Bottle Coffee - Mint Plaza",
"business_url": "https://www.yelp.com/biz/blue-bottle-coffee-san-francisco",
"platform": "yelp",
"rating_scale": 5
},
{
"text": "It is neatly tucked behind a big building so when you look for Blue Bottle you should try to find the Mint Plaza 1st, then heads towards the back. My usual is the New Orleans Style Cold Brew, but today I opted for a simple Cold Brew to cool down with. When I asked the barista for…",
"rating": 4,
"posted_at": "Sep 17, 2021",
"useful_count": 3,
"funny_count": 0,
"cool_count": 2,
"photo_count": 4,
"business_name": "Blue Bottle Coffee - Mint Plaza",
"business_url": "https://www.yelp.com/biz/blue-bottle-coffee-san-francisco",
"platform": "yelp",
"rating_scale": 5
}
],
"next_page_token": …,
"pagination": { … },
"count": 10,
"billing": {
"charged": …,
"charged_usd": …,
"balance_after_usd": …,
…
},
"quota": { … }
}Поля ответа
Бизнес-данные находятся в results. В таблице перечислены поля, которые может содержать запись; значения, которые платформа не показывает, никогда не выдумываются.
| Поле | Значение |
|---|---|
id | Уникальный ID записи на платформе. Уникален только в пределах одной платформы; на разных платформах ID могут повторяться. |
text | Основной текст без HTML возвращается полностью и никогда не обрезается (на нескольких платформах результаты списковых запросов содержат только фрагмент; это указано в примечаниях к полям платформы). |
rating | Рейтинг. Шкала зависит от платформы: rating_scale в той же записи задаёт максимум (обычно 5; у Booking, Douban, iQIYI и NAVER — 10). Перед сравнением между платформами пересчитайте значения с учётом rating_scale, иначе результат сравнения может оказаться обратным. |
rating_scale | Максимальное значение rating в той же записи: 5 для пятизвёздочных шкал, 10 для десятибалльных. Поле присутствует, только если у записи есть рейтинг. |
posted_at | Время публикации в ISO 8601, UTC (например, 2026-08-07T12:34:56+00:00). Нестандартные строки платформы передаются как есть, поэтому учитывайте это при разборе. null означает, что платформа его не раскрывает. |
author_name | Отображаемое имя автора. |
useful_count | Трактуется так же, как на самой платформе |
photo_count | Трактуется так же, как на самой платформе |
business_name | Трактуется так же, как на самой платформе |
business_url | Трактуется так же, как на самой платформе |
platform | Идентификатор исходной платформы. Совпадает со значением platform в запросе (например, xiaohongshu, tiktok). |
funny_count | Трактуется так же, как на самой платформе |
cool_count | Трактуется так же, как на самой платформе |
Ошибки и оплата
- 401
- Ключ отсутствует или недействителен.
- 402
- Недостаточно средств на балансе. Сначала пополните баланс.
- 422
- Недопустимое имя или значение параметра. Исправьте запрос по подсказкам в сообщении об ошибке. Без списания.
- 429
- Достигнут лимит запросов в минуту. Подождите указанное в Retry-After время, затем повторите попытку.
- 503
- Не удалось выполнить. Зарезервированная сумма возвращается на баланс. Если результат неизвестен, проверьте его перед повторной попыткой.
- 200 (пусто)
- Нет данных. Без списания.
Официальные источники
Используются только для проверки объектов и терминов. Они не означают, что платформа разрешила или одобрила работу EveryInfra.
- Yelp: как нерекомендованные отзывы связаны с общим рейтингом ↗
Yelp указывает, что отзывы, которые сейчас не рекомендуются, не учитываются в общем звёздном рейтинге и числе отзывов заведения; поэтому число записей и среднюю оценку в любой собранной выборке нельзя напрямую выдавать за официальные сводные показатели сайта.
Проверено 2026-09-04