Доступность столов
Обновлено: 2026-06-24 17:30 MSK
Перед созданием брони проверьте доступность — какие слоты и столы свободны на нужную дату для заданного размера компании. Есть два эндпоинта: хостовый (полный контроль) и гостевой (как видит онлайн-гость).
GET /api/rsv/admin/restaurants/{restaurantId}/availability
Доступность столов ресторана на дату. Поведение зависит от параметра AsOnlineGuest:
AsOnlineGuest=true— расчёт как для онлайн-гостя: ограниченные слоты, без занятых столов.AsOnlineGuest=false— полная хостовая доступность: с фильтрацией закрытых слотов и обработкой овербукинга/событий.
Параметры
| Параметр | Где | Тип | Описание |
|---|---|---|---|
restaurantId * | path | integer | Идентификатор ресторана |
Date | query | date-time | Дата (и время) для расчёта доступности |
GroupSize | query | integer | Размер компании |
RangeInMinutes | query | integer | Окно поиска вокруг времени, в минутах |
TableTurnOver | query | number | Ожидаемое время оборота стола |
ExcludeId | query | string | Исключить бронь с этим ID (например, при изменении существующей) |
Areas | query | string | Фильтр по зонам/залам |
AllowBusyTables | query | boolean | Разрешить показ занятых столов |
DeliveryType | query | string | Тип обслуживания (зал/доставка/самовывоз) |
AsOnlineGuest | query | boolean | Считать как для онлайн-гостя (см. выше) |
Пример
curl -G https://api.hostmeapp.com/api/rsv/admin/restaurants/123/availability \ -H "Authorization: Bearer $TOKEN" \ --data-urlencode "Date=2026-07-01T19:00:00" \ --data-urlencode "GroupSize=2" \ --data-urlencode "RangeInMinutes=120" \ --data-urlencode "AsOnlineGuest=true"
Ответ. Эндпоинт возвращает доступные слоты и столы на дату. Точная схема успешного ответа (
200) в спецификации не зафиксирована — ориентируйтесь на фактический ответ вашего окружения. Документированы коды ошибок:400 Bad Request,404 Not Found(тело —ProblemDetails).
GET /api/core/mb/restaurants/{restaurantId}/availability
Гостевой («mobile/booking») вариант доступности — то, что видит онлайн-гость. Набор параметров проще:
| Параметр | Где | Тип | Описание |
|---|---|---|---|
restaurantId * | path | integer | Идентификатор ресторана |
Date | query | date-time | Дата |
PartySize | query | integer | Размер компании |
RangeInMinutes | query | integer | Окно поиска, в минутах |
Areas | query | string | Фильтр по зонам |
DeliveryType | query | string | Тип обслуживания |
Обратите внимание: здесь параметр размера компании называется PartySize (а в хостовом эндпоинте — GroupSize).
Когда какой использовать
| Сценарий | Эндпоинт |
|---|---|
| Виджет/витрина бронирования для гостя | GET /api/core/mb/.../availability |
| Хостовая панель, полный контроль, овербукинг | GET /api/rsv/admin/.../availability |
Дальше
Нашли слот — создавайте бронь: Создание и управление.