Overview

The Online Booking API connects the booking engine on a hotel’s own website to HMS Hotel Software. Room and rate lists, calendar availability, coupon validation, the payment step and pushing the booking into HMS all go through this API. It is designed for agencies building booking engines and for HMS partners.

Base URL#

All endpoints live under the base URL below, on the /external/… path. Only HTTPS is accepted.

API base URL
https://test.hms.gen.tr

Flow at a glance#

1LoginPOST /external/public/login
2Rooms & ratesPOST /external/online/roomType
3PaymentPOST …/payment/type/{type}
4BookingPOST …/channel/booking

The token from login is valid for 7 days and bound to one hotel. The room list returns the sellable rooms and prices for the dates and occupancy the guest searched; once the guest has chosen and the payment type is settled, the booking is written to HMS as a BookingPushRQ. The Booking flow guide walks through every step.

Resources#

ResourceEndpoints
AuthenticationPOST /external/public/login
Rooms and ratesPOST /external/online/roomType
GET /external/room/type/hotel/availability
BookingPOST /external/online/channel/booking
PaymentGET /external/online/payment/type
GET /external/payment/company
POST /external/online/payment/type/{paymentType}
CouponPOST /external/online/coupon/search
Packages and extrasGET /external/stock/packages
Hotel informationGET /external/hotel/{hotelID}/contact/info
GET /external/online/social/media
GET /external/online/footer
GET /external/online/mail/host
LookupsPOST /external/counties
GET /external/currencies
GET /external/languages

General rules#

  • Every request except login carries an Authorization: Bearer <token> header.
  • Most POST endpoints take form fields (application/x-www-form-urlencoded or multipart/form-data). The booking push and payment start expect JSON bodies. Each endpoint’s reference page says which.
  • Responses are JSON with a success flag. Business-rule errors also come back as HTTP 200; judge the outcome by success, not by the status code.
  • Dates are YYYY-MM-DD, amounts are two-decimal strings ("965.00"), and the currency comes from the hotel’s online channel settings.
  • The hotelID parameter must match the hotel the token is bound to.

Version#

These docs cover HMS API V2. New fields and endpoints may be added without notice; write your client to ignore unknown fields. Changes are listed in the changelog.

Next steps#

Last updated: 8 September 2026Found a mistake? Let us know