Modify Hotel Reservation API Reference
Put |
book/reservations/{LocatorCode} For {LocatorCode} send the locator code of the reservation to retrieve. Base path: Use this base path if you have not yet received or not migrated to the new credentials from Travelport:
Use this base path after you have migrated to the new credentials from Travelport (using .net instead of .com):
|
Related Content: Hotel Guide, Hotel Workflow Diagram, Create Reservation Reference Payload API Reference
Use Modify Hotel Reservation to modify specific data on an existing booking made with the JSON Hotel APIs. Modify Hotel supports changes to the following data:
-
Dates of reservation, if allowed by supplier; note that a change in price may occur
-
Form of payment details
-
Specific details of the traveler associated with a booking as follows:
-
Changing the given name and/or surname to that of another traveler currently on the reservation; other name changes are not supported
-
Telephone number
-
Email address
-
-
Adding new comments
Request
Also see Authentication and Common Hotel API Headers.
Query Parameters
None.
Request Body

Object |
Description |
Required/Optional |
---|---|---|
ReservationDetail |
Top level object for Modify Reservation request. Must include Receipt object to send confirmation and locator details of current booking. May include Traveler, Offer, Form of Payment, and ReservationComment objects depending on the data to be modfied. |
Required |
Receipt |
Top level object for reservation confirmation and locator details. Includes Confirmation object. |
Required |
Confirmation |
Confirmation details. Includes ConfirmationStatus and Locator objects. |
Required |
ConfirmationStatus |
String. Status associated to the sold hotel segment. Send the value from the Create Reservation response: Receipt/Confirmation/ConfirmationStatus |
Required |
Locator |
Top level object for locator details. |
Required |
|
String. Send the value from the Create Reservation response Receipt/Confirmation/ConfirmationStatus/Locator/locatorType |
Required |
|
String. Content source. Supplier code. Send the value from the Create Reservation response Receipt/Confirmation/ConfirmationStatus/Locator/source |
Required |
|
String. Send the value from the Create Reservation response Receipt/Confirmation/ConfirmationStatus/Locator/sourceContext |
Required |
|
String. The supplier confirmation number. Send the value from the Create Reservation response Receipt/Confirmation/ConfirmationStatus/Locator/value |
Required |
Traveler |
Send if modifying traveler details; see table below. |
Optional |
Offer |
Send if modifying dates of stay; see table below. |
Optional |
FormOfPayment |
Send if modifying form of payment details; see table below. |
Optional |
ReservationComment |
Send if adding comments; see table below. |
Optional |

Object |
Description |
Required/Optional |
---|---|---|
Traveler |
Traveler details. May include PersonName, Telephone, and Email objects. |
Required to modify traveler details |
PersonName |
Traveler name. The new name must match an existing name in the PNR.
Travelport+ limits the combination of Given and Surname to 22 characters. Given name must have at least one character. Any PersonName exceeding 22 characters is truncated in the response.
|
Required to modify traveler name |
|
String. Updated traveler first name. |
Required to modify given name |
|
String. Updated traveler last name. |
Required to modify surname |
Telephone |
Traveler telephone details. |
Required to modify telephone |
|
String. Phone number. |
Required to modify telephone |
|
String. Phone local area code. |
Required to modify telephone |
|
String. Phone country code. |
Optional |
|
String. Phone city code. |
Optional |
|
Traveler email address. |
Required to modify email |
|
String. Traveler email address. |
Optional |

Object |
Description |
Required/Optional |
---|---|---|
Offer |
Top level object used when changing reservation dates. Includes Product object. |
Required to change reservation dates |
Product |
Details about stay dates. Includes DateRange object. |
Required to change reservation dates |
DateRange |
Check-in and -out dates. |
Required to change reservation dates |
|
String. Check-in date in YYYY-MM-DD format. |
Required to change start date |
|
String. Check-out date in YYYY-MM-DD format. |
Required to change end date |
|
String. Same day check-in and -out date in YYYY-MM-DD format. |
Optional |

Object |
Description |
Required/Optional |
---|---|---|
FormOfPayment |
Top level object for form of payment details. Includes PaymentCard. |
Required |
PaymentCard |
Form of payment details. Includes CardNumber, SeriesCode, Telephone, and Address objects. |
Required |
|
String. Credit card expiration date in MMYY format. |
Required |
|
String. Type of card including Credit, Debit, and Gift. |
Required |
|
String. Code for credit card type. |
Required |
|
String. Name on credit card. |
Required |
CardNumber |
Card number details. |
Required |
|
String. Credit card number. |
Required |
SeriesCode |
Security code of card. |
|
|
String. The credit card three- or four-digit CVV code. Booking.com requires the CVV code.
|
Required for certain suppliers. |

Modify supports adding these types of remarks:
-
Notepad remarks, including general, historical, and confidential
-
Unassociated remarks
-
Associated remarks
-
Special Instruction remarks
-
Accounting remarks
Hotel does not support updating or removing an existing a remark item. A user must use the Workbench messages to update any existing remark items.
Object |
Description |
Required/Optional |
||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ReservationComment |
Optional top level object used for notepad, unassociated, and special instruction remarks. Includes Comment and AppliesTo objects. |
Optional |
||||||||||||||||
|
Originator of comment. Accepted value: Agency. |
Required |
||||||||||||||||
|
Designates visibility of remark.
Notepad remarks: Agency
Unassociated remarks: Traveler
Associated remarks: Traveler Special instructions: Supplier |
Required |
||||||||||||||||
Comment |
Array of name/value pairs. |
Required |
||||||||||||||||
|
Type of remark.
Notepad remarks: 2 character code. Use asterisk for any placeholder. (HS, CR, R*, **)
Unassociated remarks: ITIN COMMENTS
Associated remarks: ITIN COMMENTS Special instruction remarks: SI |
Required |
||||||||||||||||
|
String. Remark text. Limits:
Notepad remarks: 87 characters
Unassociated remarks: 70 characters
Associated remarks: 70 characters Special instruction remarks: 50 characters |
Required |
||||||||||||||||
AppliesTo |
Only used with associated remarks. Top level object to designate which hotel segments to link a remark. |
Required for associated remarks. |
||||||||||||||||
OfferIdentifier |
Object for hotel segment offer number. |
Required for associated remarks. |
||||||||||||||||
|
Specific offer ID number associated to the hotel segment. Perform a RETRIEVE message first to validate the correct offer ID number if you have multiple hotel segments in the PNR. |
Required for associated remarks. |
||||||||||||||||
Accounting |
Optional top level object used for all DOCI remarks. Includes NameValuePair object. |
Optional |
||||||||||||||||
|
Accounting remark designator. Accepted value: DOCI. |
Required |
||||||||||||||||
NameValuePair |
Array of name/value pairs. |
Required |
||||||||||||||||
|
Type of remark. Accepted values:
|
Required |
||||||||||||||||
|
String. Text to pair with name values above. Text limitations for each name value are listed below.
|
Required |
Response
The Modify Hotel Reservation response is the same as the Create Reservation response, returning all booking details including the updates as well as booking details that were not updated. See the Create Reservation API Reference for details.
Example Request
The following example request modifies the form of payment and adds a comment.

{
"ReservationDetail": {
"Receipt": [
{
"@type": "ReceiptConfirmation",
"Confirmation": {
"@type": "ConfirmationHold",
"ConfirmationStatus": "Confirmed",
"Locator": {
"locatorType": "Confirmation Number",
"sourceContext": "Supplier",
"value": "97037700"
}
}
}
],
"FormOfPayment": [
{
"@type": "FormOfPaymentPaymentCard",
"PaymentCard": {
"@type": "PaymentCardDetail",
"expireDate": "0627",
"CardType": "Credit",
"CardCode": "VI",
"CardHolderName": "Frank Sinatra",
"CardNumber": {
"@type": "CardNumber",
"PlainText": "4539231979020313"
},
"SeriesCode": {
"@type": "SeriesCode",
"PlainText": "647"
},
"PersonName": {
"@type": "PersonNameDetail",
"Given": "Sridhar",
"Middle": "Example String Value",
"Surname": "Vudutha"
},
"Address": {
"@type": "AddressDetail",
"Number": {
"value": "125"
},
"Street": "Billing Address Street",
"AddressLine": [
"125 Billing Address Street"
],
"City": "Claremont",
"County": "Los Angeles",
"StateProv": {
"value": "CA",
"name": "Texas"
},
"Country": {
"value": "US",
"id": "country_4",
"name": "United States",
"codeContext": "Example String Value"
},
"PostalCode": "91711-3323"
},
"Telephone": [
{
"@type": "TelephoneDetail",
"countryAccessCode": "1",
"areaCityCode": "909",
"phoneNumber": "1231234",
"cityCode": "DEN"
}
],
"Email": [
{
"value": "smith@example.com"
}
]
}
}
]
}
}
Example Response
The Modify Hotel Reservation response is the same as the Create Reservation response, returning all booking details including the updates.

{
"ReservationResponse": {
"Reservation": {
"@type": "ReservationDetail",
"id": "7122e5bc-591d-468d-b5ec-85ee1951f486",
"Offer": [
{
"@type": "Offer",
"id": "O1",
"Identifier": {
"authority": "TVPT"
},
"Product": [
{
"@type": "ProductHospitality",
"Quantity": 1,
"bookingCode": "XMIA00",
"guests": 1,
"PropertyKey": {
"chainCode": "SI",
"propertyCode": "73851"
},
"DateRange": {
"start": "2022-09-11",
"end": "2022-09-12"
}
}
],
"Price": {
"@type": "PriceDetail",
"CurrencyCode": {
"value": "GBP",
"decimalPlace": 2
},
"TotalPrice": 399.2
},
"TermsAndConditionsFull": [
{
"@type": "TermsAndConditionsFullHospitality",
"CancelPenalty": [
{
"Deadline": {
"SpecificDate": {
"specific": "2022-09-10"
},
"Time": "07:25:00"
},
"Refundable": "Yes"
}
]
}
]
}
],
"Traveler": [
{
"@type": "Traveler",
"id": "T1",
"PersonName": {
"@type": "PersonName",
"Given": "AAAG",
"Surname": "AAAAS"
},
"Telephone": [
{
"@type": "Telephone",
"phoneNumber": "011-111111111",
"cityCode": "DEN"
},
{
"@type": "Telephone",
"phoneNumber": "022-22222222",
"cityCode": "DEN"
},
{
"@type": "Telephone",
"phoneNumber": "033-333333333",
"cityCode": "DEN"
}
],
"Email": [
{
"value": "aaa@travelport.com"
}
]
}
],
"TravelerProduct": [
{
"@type": "TravelerProduct",
"TravelerRef": "T1",
"OfferRef": "O1"
}
],
"Receipt": [
{
"@type": "ReceiptConfirmation",
"OfferRef": [
"O1"
],
"Confirmation": {
"@type": "ConfirmationHold",
"Locator": {
"value": "97037700",
"locatorType": "Confirmation Number",
"source": "SI",
"sourceContext": "Supplier"
},
"OfferStatus": {
"@type": "OfferStatusHospitality",
"Status": "Confirmed"
}
}
},
{
"@type": "ReceiptConfirmation",
"Confirmation": {
"@type": "ConfirmationHold",
"Locator": {
"value": "2BPK1S",
"locatorType": "PNR Locator",
"sourceContext": "Travelport"
},
"OfferStatus": {
"@type": "OfferStatusHospitality",
"Status": "Confirmed"
}
}
}
],
"ReservationComment": [
{
"@type": "ReservationComment",
"Comment": [
{
"value": "Please dont charge CC"
}
],
"AppliesTo": [
{
"@type": "AppliesToOffer",
"OfferIdentifier": [
{
"@type": "OfferID",
"offerRef": "O1"
}
]
}
]
}
]
}
}
}
Error Messages
Error messages for Hotel Modify Existing API.

SourceCode | StatusCode (HTTP code) | Message |
---|---|---|
|
400 |
Not able to reach IDM Authorization atomic or Authorization cannot be identified due to insufficient inputs. |
|
400 |
Provider Locator must be provided |
|
400 |
Unable to process Modify request: Invalid confirmation number. |
|
400 |
INVALID - CREDIT CARD |
|
400 |
UNSUCCESSFUL LINK SELL- MSG FROM LINK VENDOR INVALID FORM OF GUARANTEE |
|
400 |
UNSUCCESSFUL LINK SELL- MSG FROM LINK VENDOR INVALID CREDIT CARD VENDOR ID |
|
400 |
First Name and Last Name required for modify. |
|
400 |
INVALID - DATE MODIFICATION |
|
400 |
Cannot parse 05-03: Text '05-03' could not be parsed at index 0. Date format must be yyyy-MM-dd. |
|
400 |
INVALID-ARRIVAL DATE IN THE PAST |
|
400 |
ARRIVAL DATE BEYOND 331 DAYS INTO FUTURE |
|
400 |
INVALID-OUT DATE IN THE PAST |
|
400 |
CHECK OUT DATE BEYOND 332 DAYS INTO FUTURE |
|
401 |
Unathorised user. |
|
500 |
null |