# Modifying a hotel booking Once the hotel room has been booked, the traveler can modify the booking as long as the hotel selection is not changed. This means that the occupancy dates and rooms within the booked hotel can be modified based on availability and hotel policy. > **Note:** Modifying a hotel booking does not allow the traveler to switch hotel establishments. To change the booking to a different hotel, the traveler must cancel the existing booking and create a new one. The steps below explain how to modify an existing hotel booking. | Step | Name | Endpoint | Details | | --- | --- | --- | --- | | 1. | [Modify hotel details](/openapi/hotelapi#operation/hotelModifyDetails) | `/v2/hotel/pnrs/{pnrId}/modify-details` | View the available modifications that can be requested for an existing hotel booking.**URL path requires:** `pnrId` from step 4 of [creating a hotel booking](/spotnana/hotel_booking_workflow) workflow.**Request body requires:** Occupancy details and `preSearchAnswers` containing the custom field questions (e.g., What is the purpose of your travel?).**Response will contain:** `rooms` containing the list of other room options available, `bookedRooms` containing the details about the existing room booking and price. The `rooms` > `penaltyAmount` field will contain the penalty charge if applicable.**Other APIs will use**: `rooms` > `rateOptions` > `priceValidateKey` | | 2. | [Verify hotel price](/openapi/hotelapi#operation/hotelPriceCheck) | `/v2/hotel/price-check` | Verify the selected hotel room price from the list of options displayed in step 1.**Request body requires:** `priceValidateKey` from step 1.**Response will contain:** `bookingKey`**Other APIs will use:** `bookingKey` | | 3. | [Modify hotel booking](/openapi/hotelapi#operation/hotelModifyBooking) | `/v2/hotel/pnrs/{pnrId}/modify-book` | Modify the existing booking with the selected room from step 1.**URL path requires:** `pnrId` from step 4 of [creating a hotel booking workflow](/spotnana/hotel_booking_workflow). Use the [get trip details](/openapi/tripapi#operation/getTripDetailsV3) API to retrieve the `pnrId` of the hotel booking.**Request body requires:** `bookingKey` from step 2, traveler details, `tripId`, `bookingContact`, and special requests (e.g., early check-in).**Response will contain:** A new `pnrId` for the modified booking, `pnrStatus`, and `externalPnrId` to hold the modified [source PNR](/spotnana/basic_trip_concepts#source-pnr).**Other APIs will use:** `pnrId` and `externalPnrId` (also referred to as `cancelSourcePnrId` in other APIs). |