roomesto.com · English

Поиск отелей для ИИ-ассистентов

roomesto.com отвечает на запросы о поиске отелей актуальными ценами и наличием по обычному GET-запросу. Аккаунт, ключ API, cookies, JavaScript и MCP-клиент не нужны. Тот же поисковый движок работает на сайте.

Адрес запроса

GET https://roomesto.com/ai/hotels возвращает HTML-страницу с результатами, которая читается без JavaScript. Добавьте format=json (или запросите /ai/hotels.json, или отправьте заголовок Accept: application/json), чтобы получить структурированный JSON.

Параметры

ПараметрОбязательныйФормат и ограничения
destinationдаГород или регион, от 2 до 80 символов, например Dubai, Istanbul, Paris (название лучше на английском).
checkinдаДата YYYY-MM-DD: сегодня или позже (UTC), не дальше 365 дней вперёд.
checkoutдаДата YYYY-MM-DD, позже даты заезда; не больше 30 ночей.
adultsнет, по умолчанию 2Целое число от 1 до 6.
children_agesнетВозраст детей через запятую, от 0 до 17 лет, не больше 4 детей, например 5,12.
currencyнет, по умолчанию USDUSD, EUR, RUB, GBP, TRY, AED, THB, CNY.
min_price, max_priceнетЦена за ночь в выбранной валюте, от 0 до 100000.
limitнет, по умолчанию 10Целое число от 1 до 20.
langнет, по умолчанию enen, ru, de, es, fr, tr, it (язык названий отелей и адресов).

Примеры

Ответ в JSON

status — одно из значений: ok, no_results (HTTP 200), destination_not_found (404), invalid_request (400, со списком errors: поле param и текст message) или provider_unavailable (503: без результатов и без цен, ничего не угадываем, когда поиск у поставщика не работает).

data_status показывает, откуда результаты: live — поиск выполнен только что; cached — взят недавний поиск; stale — старый поиск, пока свежие ограничены; partial — поставщик ещё отдавал отели, когда вышло время ожидания (в hotels_received — сколько отелей получено; такой ответ не кэшируется, повторите тот же запрос позже).

Каждый элемент results содержит:

Правила использования

Другие способы