Hostme | Быстрый старт

Быстрый старт

Обновлено: 2026-06-25 13:29 MSK

Сквозной сценарий интеграции бронирований: получить токен → найти ресторан → проверить доступность → создать бронь → прочитать её. Все запросы — к боевому https://api.hostmeapp.com (для теста замените на https://api-qa.hostmeapp.com).

1. Получить токен

curl -X POST https://api.hostmeapp.com/Token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=password&username=YOUR_USERNAME&password=YOUR_PASSWORD"

Сохраните access_token из ответа — он понадобится во всех следующих запросах.

export TOKEN="eyJhbGciOiJ..."

2. Узнать доступные рестораны

curl https://api.hostmeapp.com/api/core/admin/account/me \
  -H "Authorization: Bearer $TOKEN"

В ответе — массив restaurants[]. Возьмите id нужного ресторана как restaurantId:

export RID=123

3. Проверить доступность

Найдём свободные слоты на 2 человек на конкретную дату:

curl -G https://api.hostmeapp.com/api/rsv/admin/restaurants/$RID/availability \
  -H "Authorization: Bearer $TOKEN" \
  --data-urlencode "Date=2026-07-01T19:00:00" \
  --data-urlencode "GroupSize=2" \
  --data-urlencode "AsOnlineGuest=true"

Параметр AsOnlineGuest=true считает доступность так же, как для онлайн-гостя (ограниченные слоты, без занятых столов). Подробнее — Доступность столов.

4. Создать бронирование

curl -X POST https://api.hostmeapp.com/api/rsv/admin/restaurants/$RID/reservations \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "reservationTime": "2026-07-01T19:00:00",
    "groupSize": 2,
    "customerName": "Иван Петров",
    "phone": "+79991234567",
    "email": "ivan@example.com",
    "specialRequests": "Столик у окна",
    "source": "partner-widget"
  }'

В ответе вернётся объект брони (BookingContract) с присвоенным идентификатором. Полный справочник полей запроса и ответа — Создание и управление.

5. Прочитать бронирование

curl https://api.hostmeapp.com/api/rsv/admin/restaurants/$RID/reservations/RESERVATION_ID \
  -H "Authorization: Bearer $TOKEN"

Что дальше

Хочу…Раздел
Изменить или отменить броньБронирования: создание и управление
Сделать заявку с подтверждением хостомБронирования: запросы на бронь
Получить брони, созданные моим приложениемБронирования: партнёрские брони
Найти гостя / создать гостяГостевая книга
Синхронизировать менюМеню: каталог
Понять формат дат, пагинации, ошибокСоглашения · Ошибки

Перед интеграцией в прод прочитайте Соглашения: запросы и ответы — там про формат дат/времени, часовые пояса и идемпотентность.