Change Booking Room Rate
POST /properties/{tenant_id}/bookings/{booking_id}/rooms/{room_id}/rate
Change the price of one room: per night, the same price for every night, and/or the room discount. Room totals, booking totals and accounting line items are recalculated the same way as editing the price in the PMS.
Scope Required: bookings:write
URL Parameters:
booking_id(required): The booking code. A group booking (master) code is accepted.room_id(required): The booking room UUID (booking_rooms[].idfrom Get Booking)
Body Parameters (JSON) — at least one of them:
days_breakdown(optional): Array of{ day: YYYY-MM-DD, price: number >= 0 }. Send only the nights to change — the other nights keep their current price. Eachdaymust be a night of the room’s stay (checkin_dateup to the day beforecheckout_date; for a same-day booking the only night ischeckin_date) and must not repeat.price_per_night(optional): Number >= 0 — the same price for every night. Cannot be combined withdays_breakdown.room_discount(optional): Number >= 0 — discount amount for this room. The effective discount (the one sent, or the room’s current discount when omitted) must not exceed the new room price (sum of nights) — lower it in the same request when lowering the price.- If the room has no stored nightly prices, send every night in
days_breakdown(or useprice_per_night); otherwise 422. days_breakdownaccepts at most 366 items.
Important Notes:
- Allowed room statuses:
reserved,confirmed,holding,checked_in. Others → HTTP 422BOOKING_ROOM_INVALID_STATUS. - Bookings from OTA channels are not blocked; the price on the OTA reservation itself is not changed.
- Partner webhook
booking.updatedis sent for the booking that owns the room.
Response (200): same shape as Get Booking Detail (GET /bookings/{booking_id}), for the booking_id in the URL. Only the main fields are listed below.
Error codes: BOOKING_ROOM_INVALID_STATUS (422, with checkin_status and booking_status), BOOKING_001 (400/500). Validation errors → HTTP 422 with errors.
Authorizations
Phần tiêu đề “Authorizations ”Parameters
Phần tiêu đề “ Parameters ”Path Parameters
Phần tiêu đề “Path Parameters ”Request Body required
Phần tiêu đề “Request Body required ”Đổi giá một phòng — POST /bookings/{booking_id}/rooms/{room_id}/rate.
Gửi days_breakdown (chỉ các đêm cần đổi — đêm còn lại giữ giá hiện tại) HOẶC
price_per_night (cùng giá cho mọi đêm), có thể kèm room_discount. Ít nhất một trường.
object
object
Responses
Phần tiêu đề “ Responses ”object
object
object
object
Validation error
object
Errors overview.
A detailed description of each field that failed validation.
object
Hỗ trợ trực tiếp 8:00–22:00 hằng ngày, kể cả cuối tuần.