Reservation

A reservation is one unit at one property, inside a booking. Each has its own RS-… ID, status, guests, price and policies.

CallPurpose
GET /v2/bookings/{booking_id}/reservations/{reservation_id}Retrieve one reservation
POST /v2/bookings/{booking_id}/reservations/{reservation_id}/modification-offersGet offers for changing a reservation's dates
PUT /v2/bookings/{booking_id}/reservations/{reservation_id}Apply a modification offer
DELETE /v2/bookings/{booking_id}/reservations/{reservation_id}Cancel (Cancellation)

Changing dates (modification)

A modification is a two-step flow, done per reservation.

1. Ask for modification offers

POST /v2/bookings/BK-BQLPC7ZB/reservations/RS-Y6MXARWD/modification-offers
{ "check_in": "2026-08-05", "check_out": "2026-08-08" }

The response contains the offers for the new dates. Each has an id, price and rate_plan with the new policies.

  • Same unit and rate: the modified reservation keeps the same unit type and rate plan. Only the dates and price change.
  • Empty list: there is no availability for the new dates.

The request can be rejected with 422 when the reservation can't be modified:

  • The stay has already started.
  • The rate is non-refundable.
  • The hotel's system doesn't support modifications.
  • The dates are unchanged.

2. Apply the modification

PUT /v2/bookings/BK-BQLPC7ZB/reservations/RS-Y6MXARWD
{
  "offer_id": "fb2bc6ee-423a-4281-947b-07b8c09ff5b6",
  "payment": { "type": "visa", "card_number": "4111111111111111", "cvv": "123",
               "card_holder": "John Doe", "expiry_month": "11", "expiry_year": "2028" }
}
  • payment is required. Send full card details including CVV. It doesn't have to be the card used for the original booking.
  • Response: the updated reservation, with its new dates and price.
  • Offers are tied to their reservation. A modification offer can only be applied to the reservation it was requested for. To change dates for a multi-unit booking, request offers for each reservation separately.
ErrorMeaning
400 Invalid Body providedMalformed JSON, or a field has the wrong type (all payment fields are strings)
400 with validation messagesMissing offer_id or payment, invalid card expiry, etc.
404 Modification offer could not be foundOffer expired or belongs to another reservation; request new modification offers
404 Not foundUnknown booking or reservation

Guests

guests on a reservation are the people staying in that unit.

  • Send at least one guest per reservation.
  • Send no more guests than the adults + children you searched for in that unit.
  • First and last name are required. All other guest fields are optional.

See Booking → Customer and guest data for formats and per-hotel limits.