Complete a hard amendment (rebook)

Overview

Step 2 of 2 in the hard amendment flow. Use a prebookId produced by POST /bookings/{bookingId}/alternative-prebooks to create the replacement booking. On success, the new booking is created and the original booking is automatically cancelled — you do not need to call the cancel endpoint.

When to Use

  • After alternative-prebooks — Once the guest has chosen one of the alternative prebooks returned by POST /bookings/{bookingId}/alternative-prebooks.
  • Date or occupancy changes — The guest needs different check-in/check-out dates or a different number of adults/children at the same hotel.
  • Hard amendments only — For simple guest-name updates use PUT /bookings/{bookingId}/amend instead.

How It Works

  1. The provided prebookId is validated against the booking referenced by existingBookingId (it must have been produced by an alternative-prebooks call for that booking).
  2. The new booking is created with the supplier using the alternative rate.
  3. The original booking is then automatically cancelled. If the cancellation fails after the new booking is confirmed, the error is logged but the new booking is still returned — contact support to reconcile.

Payment

  • No payment is collected on this endpoint. The payment.method value is ignored — the request body must still include a payment object to satisfy the schema, but the server forces the method to NONE internally. Any price delta between the original and new rate is settled out of band.

Refundable vs Non-refundable Originals

  • Refundable original — Returns 200 OK with the new booking, and the original is cancelled immediately.
  • Non-refundable original — Returns 202 Accepted with a booking amendment record. The request is queued for the Nuitee operations team to handle manually (the original booking may incur cancellation fees).

Required Information

  • prebookId — A prebook session returned by POST /bookings/{bookingId}/alternative-prebooks.
  • existingBookingId — The bookingId of the original confirmed booking being replaced. Must match the bookingId that produced the prebook.
  • holder and guests — Same structure as POST /rates/book. If holder fields are empty they are copied from the original booking.

Quick Start

  1. Call POST /bookings/{bookingId}/alternative-prebooks and pick one of the returned prebookId values.
  2. Call this endpoint with that prebookId, the original bookingId as existingBookingId, and guest information.
  3. On success, the new booking is confirmed and the original is cancelled — no further calls are needed.
Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Query Params
integer

Optional request timeout in seconds.

Body Params
string
required

A prebook session returned by POST /bookings/{bookingId}/alternative-prebooks. Must reference the same booking as existingBookingId.

string
required

The bookingId of the confirmed booking being replaced. The original booking is cancelled automatically when the new booking is confirmed.

string

An optional client-defined reference ID. Acts as an idempotency key to prevent duplicate rebooks. If a booking already exists with the same client reference, the API will return a 4005 error.

holder
object
required

Information on the person responsible for the booking. Any field left empty is populated from the original booking's holder.

guests
array of objects
required

List of guests for the new booking. There is a 1:1 mapping between guests and rooms (one guest entry per occupancyNumber).

guests*
payment
object
required

Required by the schema but ignored. The server forces the payment method to NONE for rebooks — no charge is taken on this endpoint. Send {"method": "NONE"} to be explicit.

string

Optional tracking ID for analytics or partner attribution.

Responses

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json