رابط هتل
در میان 1.5M+ اقامتگاه بر اساس کد شهر (به سبک IATA، مثلاً DXB) یا کدهای هتلی که از کاتالوگ ما ذخیره میکنید جستوجو کنید، نرخهای سطح اتاق را همراه با نوع پذیرایی و قوانین لغو بخوانید، اعتبارسنجی و رزرو کنید و طبق همان قوانین لغو کنید.
جستوجو
POST /v1/hotels/search with a destination and check-in/out dates and one to eight rooms (adults and child ages per room). The destination is a cityCode (IATA-style, e.g. "DXB" — GET /v1/content/cities lists them), a list of hotelCodes from the catalogue you store on your side (GET /v1/content/hotels per city), or a geo circle. Name matching is yours to do against your stored list; availability is always asked by code.
با wait=true کل نتایج را دریافت میکنید؛ با wait=false یک searchId که باید با GET /v1/hotels/search/{searchId} پرسوجو شود — همان تاریخها و تعداد اتاق را بفرستید تا کلیدهای نرخ قابل رزرو بمانند. هر هتل محتوای خود (نام، ستاره، نشانی، موقعیت جغرافیایی، تصویر اصلی، امکانات) و ارزانترین نرخ هر اتاق را با یک rateKey مبهم، قیمت کل و شبانه، نوع وعده غذایی، قابلیت استرداد و مهلت لغو دارد.
اتاقها و نرخها
GET /v1/hotels/{hotelCode}/rooms?rateKey=… همه انواع اتاق و نرخهای یک اقامتگاه را برای اقامت جستوجوشده فهرست میکند: نوع تخت، ظرفیت، وعده غذایی، شرایط، مالیاتها و هزینهها به تفکیک، و اینکه نرخ قابل استرداد است یا نه.
بررسی نرخ
POST /v1/hotels/rates/{rateKey}/check تأیید میکند که نرخ هنوز قابل رزرو است و قیمت و شرایط نهایی را برمیگرداند. این کار را بلافاصله پیش از رزرو انجام دهید: یک 409 price_changed یا rate_expired در این مرحله بسیار کمهزینهتر از یک رزرو ناموفق است.
رزرو
POST /v1/hotels/bookings با rateKey، سرپرست رزرو، مهمانان هر اتاق و اطلاعات تماس، بهعلاوه یک Idempotency-Key. پاسخ، رزرو همراه با شماره مرجع، تأییدیه تأمینکننده و اطلاعات واچر است. GET /v1/hotels/bookings/{bookingId} هر زمان آن را دوباره برمیگرداند.
لغو
GET /v1/hotels/bookings/{bookingId}/cancellation-quote جریمه را طبق شرایط در همین لحظه برمیگرداند؛ POST /v1/hotels/bookings/{bookingId}/cancel (Idempotency-Key الزامی است) آن را قطعی میکند.