Аутентификация

Доступ к Online Booking API осуществляется по учётным данным партнёра, которые выдаёт HMS. Эндпоинт входа обменивает apiKey и apiSecret на токен, который затем передаётся в заголовке Authorization: Bearer во всех остальных запросах. Подробнее — в руководстве Аутентификация.

Войти и получить токен#

POST/external/public/login

Аутентификация не требуется · Тело: application/x-www-form-urlencoded или multipart/form-data

Проверяет учётные данные партнёра и выдаёт токен, если у партнёра есть доступ к отелю. Токен привязан к одному отелю; для каждого отеля выполняйте вход отдельно.

Поля формы

apiKeystringобязательный
Ключ партнёра, выданный HMS.
apiSecretstringобязательный
Секрет партнёра. Храните его только на сервере.
hotelCodeintegerобязательный
ID отеля в HMS (hotelID). У партнёра должен быть доступ к этому отелю.
hotelSeoUrlstring
SEO-адрес отеля в HMS. Вместо hotelCode его использует только собственный модуль бронирования HMS; сторонние интеграции передают hotelCode.

Ответ

200 Токен и данные отеля. Токен действует 7 дней; обновляйте его, повторно выполняя вход до истечения срока.

successboolean
Признак успеха.
hotelCodestring
ID отеля, к которому привязан токен.
tokenstring
Bearer-токен. Считайте его непрозрачным значением и не разбирайте.
hotelSeoUrlstring | null
SEO-адрес отеля.

Ответы с ошибками

  • 200 partner_is_not_found — пара ключей не совпала; hotel_is_not_found — отель по hotelSeoUrl не найден; hotel_permission_is_not_found — у партнёра нет доступа к этому отелю или доступ неактивен.
Запрос
curl "https://test.hms.gen.tr/external/public/login" \
  -d "apiKey=5y94tLmALIKDyUVdEPlAAjg5xWGQNgQtnALlV4+Am7Q=" \
  -d "apiSecret=a143d6408634696b811def06d236682950cacb9761aa8ad5827da4015bda4b19" \
  -d "hotelCode=1000"
Ответ · 200
{
    "success": true,
    "hotelCode": "1000",
    "token": "eyJlbmREYXRlIjp7ImRhdGUiOiIyMDI2LTA5LTE1IDEwOjI0OjMxLjAwMDAwMCIsInRpbWV6b25lX3R5cGUiOjMsInRpbWV6b25lIjoiRXVyb3BlL0lzdGFuYnVsIn0sInRva2VuIjoiM2tkOXNscTJwbTh2eHI0dHp5Nm53YjFoYzdmajVnYTAiLCJob3RlbElEIjoxMDAwLCJ1c2VySUQiOjQyLCJkYXRlIjp7ImRhdGUiOiIyMDI2LTA5LTA4IDEwOjI0OjMxLjAwMDAwMCJ9fQ==",
    "hotelSeoUrl": "demo-otel"
}
Ответ · 200 (неудача)
{
    "success": false,
    "token": null,
    "message": "hotel_permission_is_not_found"
}
Последнее обновление:: 21 сентября 2026 г.Нашли ошибку? Напишите нам