openapi: 3.0.1
info:
title: Expedia Group EPS Deposit Bookings Manage Booking API
description: 'The EPS Deposit API manages the deposit policy for a property, offering operations to create/update, read and delete it.
To start experimenting, please use your existing EQC credentials and properties. We''ve also made the following test credentials available: EQCtest12933870 / ew67nk33 assigned to test property ID 12933870.'
contact:
name: Expedia Partner Services
url: https://expediaconnectivity.com/developer
email: eqcss@expedia.com
version: '1.0'
servers:
- url: https://services.expediapartnercentral.com/
security:
- Basic: []
tags:
- name: Manage Booking
description: Retrieve existing itineraries or cancel existing rooms.
paths:
/itineraries:
get:
tags:
- Manage Booking
summary: Expedia Group Search for and retrieve Bookings with Affiliate Reference Id
description: 'This can be called directly without a token when an affiliate reference id is provided. It returns details about bookings associated with an affiliate reference id, along with cancel links to cancel the bookings.
Note: Newly created itineraries may sometimes have a small delay between the time of creation and the time that the itinerary can be retrieved. If you receive no results while trying to search for an itinerary that was successfully created, or if you receive a response with two fields, namely, `itinerary_id` and `creation_date_time`, then please wait a few minutes before trying to search for the itinerary again.
'
operationId: getReservation
parameters:
- name: Accept
in: header
description: 'Specifies the response format that the client would like to receive back. This must be `application/json`.
'
required: true
schema:
type: string
example: application/json
- name: Accept-Encoding
in: header
description: 'Specifies the response encoding that the client would like to receive back. This must be `gzip`.
'
required: true
schema:
type: string
example: gzip
- name: Customer-Ip
in: header
description: 'IP address of the customer, as captured by your integration.
Ensure your integration passes the customer''s IP, not your own. This value helps determine their location and assign the correct payment gateway.
Also used for fraud recovery and other important analytics.
'
required: true
schema:
type: string
- name: User-Agent
in: header
description: 'The `User-Agent` header string from the customer''s request, as captured by your integration. If you are building an application then the `User-Agent` value should be `{app name}/{app version}`.
'
required: true
schema:
type: string
example: TravelNow/3.30.112
- name: Customer-Session-Id
in: header
description: 'Insert your own unique value for each user session, beginning with the first API call.
Continue to pass the same value for each subsequent API call during the user''s session, using a new value for every new customer session.
Including this value greatly eases EPS''s internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user''s session.
'
schema:
type: string
- name: Test
in: header
description: 'The retrieve call has a test header that can be used to return set responses with the following keywords:
* `standard` - Requires valid test booking.
* `service_unavailable`
* `internal_server_error`
'
schema:
type: string
enum:
- standard
- service_unavailable
- internal_server_error
- name: affiliate_reference_id
in: query
description: 'The affilliate reference id value. This field supports a maximum of 28 characters.
'
required: true
schema:
type: string
example: 111A222BB33344CC5555
- name: email
in: query
description: 'Email associated with the booking. Special characters in the local part or domain should be encoded.
'
required: true
schema:
type: string
example: test@example.com
- name: include
in: query
description: "Options for which information to return in the response. The value must be lower case.\n * history - Include itinerary history, showing details of the changes made to this itinerary\n"
required: false
schema:
type: array
items:
type: string
enum:
- history
example:
- history
responses:
'200':
description: OK
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Itinerary'
examples:
Itineraries:
value:
- itinerary_id: '8999989898988'
property_id: '8150374'
links:
cancel:
method: DELETE
href: /v3/itineraries/8999989898988?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
email: smith@example.com
phone:
country_code: '1'
area_code: '487'
number: '5550077'
rooms:
- id: '926784314'
confirmation_id:
expedia: '1234567890'
property: BEF23123AA
bed_group_id: d395b56d-d31d-4a84-ad2b-66820b1d48e2
checkin: '2018-09-21'
checkout: '2018-09-23'
number_of_adults: 2
child_ages:
- 2
- 3
given_name: Givenne
family_name: Nameo
status: booked
special_request: Please give me extra towels.
smoking: false
rate:
id: 035943984
merchant_of_record: expedia
refundable: true
cancel_refund:
amount: -65.98
currency: USD
amenities:
- '12345'
- '678'
- '9999'
promotions:
value_adds:
123abc:
id: 123abc
description: 10 USD credit on activities and sports for your stay.
3x4mp13:
id: 3x4mp13
description: 20% discount on theme park tickets purchased through the concierge desk.
cancel_penalties:
- start: '2018-01-01T01:01:01.000-08:00'
end: '2018-12-12T01:01:01.000-08:00'
amount: '250.75'
currency: USD
nonrefundable_date_ranges:
- start: '2022-02-02'
end: '2022-02-02'
deposits:
- currency: USD
value: '220.75'
due: '2018-12-12T01:01:01.000-08:00'
pricing:
nightly:
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
stay:
- type: base_rate
value: '123.45'
currency: USD
totals:
inclusive:
billable_currency:
value: '368.15'
currency: USD
exclusive:
billable_currency:
value: '345.91'
currency: USD
marketing_fee:
billable_currency:
value: '7.75'
currency: USD
property_fees:
billable_currency:
value: '36.95'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: USD
resort_fee:
billable_currency:
value: '20.00'
currency: USD
mandatory_tax:
billable_currency:
value: '11.95'
currency: USD
links:
cancel:
method: DELETE
href: /v3/itineraries/8999989898988/rooms/d08572fc-82d2-4d5d-ad30-60f5be7fb53e?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
change:
method: PUT
href: /v3/itineraries/8999989898988/rooms/d08572fc-82d2-4d5d-ad30-60f5be7fb53e?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
shop_for_change:
method: GET
href: /v3/properties/8150374/availability?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
billing_contact:
given_name: John
family_name: Smith
address:
line_1: 555 1st St
line_2: 10th Floor
line_3: Unit 12
city: Seattle
state_province_code: WA
postal_code: '98121'
country_code: US
adjustment:
value: -100.0
type: base_rate
currency: USD
creation_date_time: '2017-08-17T13:31:15.523Z'
affiliate_reference_id: 4480ABC
affiliate_metadata: This booking was made with EPS.
conversations:
links:
property:
method: GET
href: https://www.example.com?key=123abd456
travel_purpose: leisure
trader_information:
traders:
- name: Test Property Name
address:
line_1: 123 Main St
city: Springfield
state_province_code: MO
postal_code: '65804'
country_code: US
business_register_name: A Real Registry
business_register_number: 72973910d
self_certification: true
phone: 1-417-555-1212
right_to_withdraw_message: 'The right of withdrawal under European consumer law does not apply when you book
accommodation. Supplier cancellation policy will apply
'
terms_and_conditions: https://forever.travel-assets.com/flex/flexmanager/mediaasset/618796-0_2-UnitedKingdom_en.pdf
Itinerary With History and Change - Extend Stay:
value:
- itinerary_id: '8999989898988'
property_id: '8150374'
links:
cancel:
method: DELETE
href: /v3/itineraries/8999989898988?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
email: smith@example.com
phone:
country_code: '1'
area_code: '487'
number: '5550077'
rooms:
- id: '926784314'
confirmation_id:
expedia: '1234567890'
property: BEF23123AA
bed_group_id: d395b56d-d31d-4a84-ad2b-66820b1d48e2
checkin: '2018-09-21'
checkout: '2018-09-23'
number_of_adults: 2
child_ages:
- 2
- 3
given_name: Givenne
family_name: Nameo
status: booked
special_request: Please give me extra towels.
smoking: false
rate:
id: 035943984
merchant_of_record: expedia
refundable: true
cancel_refund:
amount: '-65.98'
currency: USD
amenities:
- '12345'
- '678'
- '9999'
promotions:
value_adds:
123abc:
id: 123abc
description: 10 USD credit on activities and sports for your stay.
3x4mp13:
id: 3x4mp13
description: 20% discount on theme park tickets purchased through the concierge desk.
cancel_penalties:
- start: '2018-01-01T01:01:01.000-08:00'
end: '2018-12-12T01:01:01.000-08:00'
amount: '250.75'
currency: USD
nonrefundable_date_ranges:
- start: '2018-09-14'
end: '2018-09-23'
deposits:
- currency: USD
value: '220.75'
due: '2018-08-24T01:01:01.000-08:00'
pricing:
nightly:
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
stay:
- type: base_rate
value: '123.45'
currency: USD
totals:
inclusive:
billable_currency:
value: '368.15'
currency: USD
exclusive:
billable_currency:
value: '345.91'
currency: USD
marketing_fee:
billable_currency:
value: '7.75'
currency: USD
property_fees:
billable_currency:
value: '36.95'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: USD
resort_fee:
billable_currency:
value: '20.00'
currency: USD
mandatory_tax:
billable_currency:
value: '11.95'
currency: USD
links:
cancel:
method: DELETE
href: /v3/itineraries/8999989898988/rooms/d08572fc-82d2-4d5d-ad30-60f5be7fb53e?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
change:
method: PUT
href: /v3/itineraries/8999989898988/rooms/d08572fc-82d2-4d5d-ad30-60f5be7fb53e?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
billing_contact:
given_name: John
family_name: Smith
address:
line_1: 555 1st St
line_2: 10th Floor
line_3: Unit 12
city: Seattle
state_province_code: WA
postal_code: '98121'
country_code: US
adjustment:
value: '-32.10'
type: base_rate
currency: USD
creation_date_time: '2017-08-15T15:32:55.523Z'
affiliate_reference_id: 4480ABC
affiliate_metadata: This booking was made with EPS.
conversations:
links:
property:
method: GET
href: https://www.example.com?key=123abd456
travel_purpose: unspecified
itinerary_history:
- history_id: '802737048'
event_timestamp: '2017-09-17T13:31:15.523Z'
event_type: adjustment
amount:
value: '-32.10'
currency: USD
agent_id: '10203'
room_history:
- - history_id: '928364986296'
event_timestamp: '2017-08-15T15:32:55.523Z'
event_type: created
event_source: rapid_api
room_id: '926784314'
confirmation_id:
expedia: '664637628'
property: COR8729347BB
bed_group_id: d395b56d-d31d-4a84-ad2b-66820b1d48e2
checkin: '2018-09-21'
checkout: '2018-09-22'
number_of_adults: 2
child_ages:
- 2
- 3
given_name: Givenne
family_name: Nameo
status: booked
special_request: Please give me extra towels.
smoking: false
amount_charged:
billable_currency:
value: '244.70'
currency: USD
rate:
id: 035943984
promotions:
value_adds:
123abc:
id: 123abc
description: 10 USD credit on activities and sports for your stay.
3x4mp13:
id: 3x4mp13
description: 20% discount on theme park tickets purchased through the concierge desk.
deposits:
- currency: USD
value: '220.75'
due: '2018-08-24T01:01:01.000-08:00'
pricing:
nightly:
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
stay:
- type: base_rate
value: '123.45'
currency: USD
totals:
inclusive:
billable_currency:
value: '244.70'
currency: USD
exclusive:
billable_currency:
value: '234.68'
currency: USD
marketing_fee:
billable_currency:
value: '5.14'
currency: USD
property_fees:
billable_currency:
value: '36.95'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: USD
resort_fee:
billable_currency:
value: '20.00'
currency: USD
mandatory_tax:
billable_currency:
value: '11.95'
currency: USD
- history_id: '30303030'
event_timestamp: '2017-08-17T13:31:15.523Z'
event_type: modified
event_source: rapid_api
change_reference_id: v1-Givenne
room_id: '926784314'
confirmation_id:
expedia: '1234567890'
property: BEF23123AA
bed_group_id: d395b56d-d31d-4a84-ad2b-66820b1d48e2
checkin: '2018-09-21'
checkout: '2018-09-23'
number_of_adults: 2
child_ages:
- 2
- 3
given_name: Givenne
family_name: Nameo
status: booked
special_request: Please give me extra towels.
smoking: false
amount_charged:
billable_currency:
value: '123.45'
currency: USD
rate:
id: 035943984
promotions:
value_adds:
123abc:
id: 123abc
description: 10 USD credit on activities and sports for your stay.
3x4mp13:
id: 3x4mp13
description: 20% discount on theme park tickets purchased through the concierge desk.
deposits:
- currency: USD
value: '220.75'
due: '2018-08-24T01:01:01.000-08:00'
pricing:
nightly:
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
stay:
- type: base_rate
value: '123.45'
currency: USD
totals:
inclusive:
billable_currency:
value: '368.15'
currency: USD
exclusive:
billable_currency:
value: '345.91'
currency: USD
marketing_fee:
billable_currency:
value: '7.75'
currency: USD
property_fees:
billable_currency:
value: '36.95'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: USD
resort_fee:
billable_currency:
value: '20.00'
currency: USD
mandatory_tax:
billable_currency:
value: '11.95'
currency: USD
No itineraries:
value: []
'400':
description: Bad Request
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: invalid_input
message: An invalid request was sent in, please check the nested errors for details.
errors:
- type: email.invalid
message: Customer email address is invalid.
fields:
- name: email
type: querystring
value: thisisabademail
'401':
description: Unauthorized
headers:
Region:
$ref: '#/components/headers/Region'
WWW-Authenticate:
description: Provides an example of the Authorization header.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: request_unauthenticated
message: Data required to authenticate your request is missing or inaccurate. Ensure that your request follows the guidelines in our documentation.
fields:
- name: apikey
type: header
value: jaj3982k239dka328e
- name: signature
type: header
value: 129d75332614a5bdbe0c7eb540e95a65f9d85a5b53dabb38d19b37fad6312a2bd25c12ee5a82831d55112087e1b
- name: timestamp
type: header
value: 198284729
- name: servertimestamp
type: server
value: 198284729
'403':
description: Forbidden
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: request_unauthorized
message: Your request could not be authorized.
'426':
description: Upgrade Required
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: upgrade_required
message: This service requires the use of TLS.
'429':
description: Too Many Requests
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: too_many_requests
message: You have reached your capacity for this type of request.
'500':
description: Unknown Internal Error
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: unknown_internal_error
message: An internal server error has occurred.
'503':
description: Service Unavailable
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: service_unavailable
message: This service is currently unavailable.
security:
- rapidAuth: []
/itineraries/{itinerary_id}:
get:
tags:
- Manage Booking
summary: Expedia Group Retrieve Booking
description: 'This API call returns itinerary details and links to resume or cancel the booking. There are two methods to retrieve a booking:
* Using the link included in the original Book response, example: https://api.ean.com/v3/itineraries/8955599932111?token=QldfCGlcUA4GXVlSAQ4W
* Using the email of the booking. If the email contains special characters, they must be encoded to successfully retrieve the booking. Example: https://api.ean.com/v3/itineraries/8955599932111?email=customer@email.com
Note: Newly created itineraries may sometimes have a small delay between the time of creation and the time that the itinerary can be retrieved. If you receive an error when trying to retrieve an itinerary that was successfully created, or if you receive a response with two fields, namely, `itinerary_id` and `creation_date_time`, then please wait a few minutes before trying to retrieve the itinerary again.
'
operationId: getReservationByItineraryId
parameters:
- name: Accept
in: header
description: 'Specifies the response format that the client would like to receive back. This must be `application/json`.
'
required: true
schema:
type: string
example: application/json
- name: Accept-Encoding
in: header
description: 'Specifies the response encoding that the client would like to receive back. This must be `gzip`.
'
required: true
schema:
type: string
example: gzip
- name: Customer-Ip
in: header
description: 'IP address of the customer, as captured by your integration.
Ensure your integration passes the customer''s IP, not your own. This value helps determine their location and assign the correct payment gateway.
Also used for fraud recovery and other important analytics.
'
required: true
schema:
type: string
- name: Customer-Session-Id
in: header
description: 'Insert your own unique value for each user session, beginning with the first API call.
Continue to pass the same value for each subsequent API call during the user''s session, using a new value for every new customer session.
Including this value greatly eases EPS''s internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user''s session.
'
schema:
type: string
- name: User-Agent
in: header
description: 'The `User-Agent` header string from the customer''s request, as captured by your integration. If you are building an application then the `User-Agent` value should be `{app name}/{app version}`.
'
required: true
schema:
type: string
example: TravelNow/3.30.112
- name: Test
in: header
description: 'The retrieve call has a test header that can be used to return set responses. Passing standard in the Test header will retrieve a test booking, and passing any of the errors listed below will return a stubbed error response that you can use to test your error handling code. Additionally, refer to the Test Request documentation for more details on how these header values are used.
* `standard` - Requires valid test booking.
* `service_unavailable`
* `internal_server_error`
'
schema:
type: string
enum:
- standard
- service_unavailable
- internal_server_error
- name: itinerary_id
in: path
description: 'This parameter is used only to prefix the token value - no ID value is used.
'
required: true
schema:
type: string
example: '8955599932111'
- name: token
in: query
description: 'Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed.
'
schema:
type: string
example: MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
- name: email
in: query
description: 'Email associated with the booking. Special characters in the local part or domain should be encoded. (Email is required if the token is not provided the request)
'
schema:
type: string
example: test@example.com
- name: include
in: query
description: "Options for which information to return in the response. The value must be lower case.\n * history - Include itinerary history, showing details of the changes made to this itinerary\n"
required: false
schema:
type: array
items:
type: string
enum:
- history
example:
- history
responses:
'200':
description: OK
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Itinerary'
examples:
Itinerary No History:
value:
itinerary_id: '8999989898988'
property_id: '8150374'
links:
cancel:
method: DELETE
href: /v3/itineraries/8999989898988?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
email: smith@example.com
phone:
country_code: '1'
area_code: '487'
number: '5550077'
rooms:
- id: '926784314'
confirmation_id:
expedia: '1234567890'
property: BEF23123AA
bed_group_id: d395b56d-d31d-4a84-ad2b-66820b1d48e2
checkin: '2018-09-21'
checkout: '2018-09-23'
number_of_adults: 2
child_ages:
- 2
- 3
given_name: Givenne
family_name: Nameo
status: booked
special_request: Please give me extra towels.
smoking: false
loyalty_id: ABC123
rate:
id: 035943984
merchant_of_record: expedia
refundable: true
cancel_refund:
amount: -65.98
currency: USD
amenities:
- '12345'
- '678'
- '9999'
promotions:
value_adds:
123abc:
id: 123abc
description: 10 USD credit on activities and sports for your stay.
3x4mp13:
id: 3x4mp13
description: 20% discount on theme park tickets purchased through the concierge desk.
cancel_penalties:
- start: '2018-01-01T01:01:01.000-08:00'
end: '2018-12-12T01:01:01.000-08:00'
amount: '250.75'
currency: USD
nonrefundable_date_ranges:
- start: '2022-02-02'
end: '2022-02-02'
deposits:
- currency: USD
value: '220.75'
due: '2018-12-12T01:01:01.000-08:00'
pricing:
nightly:
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
stay:
- type: base_rate
value: '123.45'
currency: USD
totals:
inclusive:
billable_currency:
value: '368.15'
currency: USD
exclusive:
billable_currency:
value: '345.91'
currency: USD
marketing_fee:
billable_currency:
value: '7.75'
currency: USD
property_fees:
billable_currency:
value: '36.95'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: USD
resort_fee:
billable_currency:
value: '20.00'
currency: USD
mandatory_tax:
billable_currency:
value: '11.95'
currency: USD
links:
cancel:
method: DELETE
href: /v3/itineraries/8999989898988/rooms/d08572fc-82d2-4d5d-ad30-60f5be7fb53e?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
change:
method: PUT
href: /v3/itineraries/8999989898988/rooms/d08572fc-82d2-4d5d-ad30-60f5be7fb53e?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
shop_for_change:
method: GET
href: /v3/properties/8150374/availability?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
billing_contact:
given_name: John
family_name: Smith
address:
line_1: 555 1st St
line_2: 10th Floor
line_3: Unit 12
city: Seattle
state_province_code: WA
postal_code: '98121'
country_code: US
adjustment:
value: -100.0
type: base_rate
currency: USD
creation_date_time: '2017-08-17T13:31:15.523Z'
affiliate_reference_id: 4480ABC
affiliate_metadata: This booking was made with EPS.
conversations:
links:
property:
method: GET
href: https://www.example.com?key=123abd456
travel_purpose: leisure
Itinerary with History:
value:
itinerary_id: '8999989898988'
property_id: '8150374'
links:
cancel:
method: DELETE
href: /v3/itineraries/8999989898988?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
email: smith@example.com
phone:
country_code: '1'
area_code: '487'
number: '5550077'
rooms:
- id: '926784314'
confirmation_id:
expedia: '1234567890'
property: BEF23123AA
bed_group_id: d395b56d-d31d-4a84-ad2b-66820b1d48e2
checkin: '2018-09-21'
checkout: '2018-09-23'
number_of_adults: 2
child_ages:
- 2
- 3
given_name: Givenne
family_name: Nameo
status: booked
special_request: Please give me extra towels.
smoking: false
rate:
id: 035943984
merchant_of_record: expedia
refundable: true
cancel_refund:
amount: '-65.98'
currency: USD
amenities:
- '12345'
- '678'
- '9999'
promotions:
value_adds:
123abc:
id: 123abc
description: 10 USD credit on activities and sports for your stay.
3x4mp13:
id: 3x4mp13
description: 20% discount on theme park tickets purchased through the concierge desk.
cancel_penalties:
- start: '2018-01-01T01:01:01.000-08:00'
end: '2018-12-12T01:01:01.000-08:00'
amount: '250.75'
currency: USD
nonrefundable_date_ranges:
- start: '2018-09-14'
end: '2018-09-23'
deposits:
- currency: USD
value: '220.75'
due: '2018-08-24T01:01:01.000-08:00'
pricing:
nightly:
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
stay:
- type: base_rate
value: '123.45'
currency: USD
totals:
inclusive:
billable_currency:
value: '368.15'
currency: USD
exclusive:
billable_currency:
value: '345.91'
currency: USD
marketing_fee:
billable_currency:
value: '7.75'
currency: USD
property_fees:
billable_currency:
value: '36.95'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: USD
resort_fee:
billable_currency:
value: '20.00'
currency: USD
mandatory_tax:
billable_currency:
value: '11.95'
currency: USD
links:
cancel:
method: DELETE
href: /v3/itineraries/8999989898988/rooms/d08572fc-82d2-4d5d-ad30-60f5be7fb53e?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
change:
method: PUT
href: /v3/itineraries/8999989898988/rooms/d08572fc-82d2-4d5d-ad30-60f5be7fb53e?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
shop_for_change:
method: GET
href: /v3/properties/8150374/availability?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
billing_contact:
given_name: John
family_name: Smith
address:
line_1: 555 1st St
line_2: 10th Floor
line_3: Unit 12
city: Seattle
state_province_code: WA
postal_code: '98121'
country_code: US
adjustment:
value: '-32.10'
type: base_rate
currency: USD
creation_date_time: '2017-08-15T15:32:55.523Z'
affiliate_reference_id: 4480ABC
affiliate_metadata: This booking was made with EPS.
conversations:
links:
property:
method: GET
href: https://www.example.com?key=123abd456
travel_purpose: unspecified
itinerary_history:
- history_id: '802737048'
event_timestamp: '2017-09-17T13:31:15.523Z'
event_type: adjustment
amount:
value: '-32.10'
currency: USD
agent_id: '10203'
room_history:
- - history_id: '928364986296'
event_timestamp: '2017-08-15T15:32:55.523Z'
event_type: created
event_source: rapid_api
room_id: '926784314'
confirmation_id:
expedia: '664637628'
property: COR8729347BB
bed_group_id: d395b56d-d31d-4a84-ad2b-66820b1d48e2
checkin: '2018-09-21'
checkout: '2018-09-22'
number_of_adults: 2
child_ages:
- 2
- 3
given_name: Givenne
family_name: Nameo
status: booked
special_request: Please give me extra towels.
smoking: false
amount_charged:
billable_currency:
value: '244.70'
currency: USD
rate:
id: 035943984
promotions:
value_adds:
123abc:
id: 123abc
description: 10 USD credit on activities and sports for your stay.
3x4mp13:
id: 3x4mp13
description: 20% discount on theme park tickets purchased through the concierge desk.
deposits:
- currency: USD
value: '220.75'
due: '2018-08-24T01:01:01.000-08:00'
pricing:
nightly:
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
stay:
- type: base_rate
value: '123.45'
currency: USD
totals:
inclusive:
billable_currency:
value: '244.70'
currency: USD
exclusive:
billable_currency:
value: '234.68'
currency: USD
marketing_fee:
billable_currency:
value: '5.14'
currency: USD
property_fees:
billable_currency:
value: '36.95'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: USD
resort_fee:
billable_currency:
value: '20.00'
currency: USD
mandatory_tax:
billable_currency:
value: '11.95'
currency: USD
- history_id: '30303030'
event_timestamp: '2017-08-17T13:31:15.523Z'
event_type: modified
event_source: rapid_api
change_reference_id: v1-Givenne
room_id: '926784314'
confirmation_id:
expedia: '1234567890'
property: BEF23123AA
bed_group_id: d395b56d-d31d-4a84-ad2b-66820b1d48e2
checkin: '2018-09-21'
checkout: '2018-09-23'
number_of_adults: 2
child_ages:
- 2
- 3
given_name: Givenne
family_name: Nameo
status: booked
special_request: Please give me extra towels.
smoking: false
amount_charged:
billable_currency:
value: '123.45'
currency: USD
rate:
id: 035943984
promotions:
value_adds:
123abc:
id: 123abc
description: 10 USD credit on activities and sports for your stay.
3x4mp13:
id: 3x4mp13
description: 20% discount on theme park tickets purchased through the concierge desk.
deposits:
- currency: USD
value: '220.75'
due: '2018-08-24T01:01:01.000-08:00'
pricing:
nightly:
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
- - type: base_rate
value: '111.23'
currency: USD
- type: sales_tax
value: '11.12'
currency: USD
stay:
- type: base_rate
value: '123.45'
currency: USD
totals:
inclusive:
billable_currency:
value: '368.15'
currency: USD
exclusive:
billable_currency:
value: '345.91'
currency: USD
marketing_fee:
billable_currency:
value: '7.75'
currency: USD
property_fees:
billable_currency:
value: '36.95'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: USD
resort_fee:
billable_currency:
value: '20.00'
currency: USD
mandatory_tax:
billable_currency:
value: '11.95'
currency: USD
'400':
description: Bad Request
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: invalid_input
message: An invalid request was sent in, please check the nested errors for details.
errors:
- type: link.invalid
message: Link is invalid.
'401':
description: Unauthorized
headers:
Region:
$ref: '#/components/headers/Region'
WWW-Authenticate:
description: Provides an example of the Authorization header.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: request_unauthenticated
message: Data required to authenticate your request is missing or inaccurate. Ensure that your request follows the guidelines in our documentation.
fields:
- name: apikey
type: header
value: jaj3982k239dka328e
- name: signature
type: header
value: 129d75332614a5bdbe0c7eb540e95a65f9d85a5b53dabb38d19b37fad6312a2bd25c12ee5a82831d55112087e1b
- name: timestamp
type: header
value: 198284729
- name: servertimestamp
type: server
value: 198284729
'403':
description: Forbidden
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: request_unauthorized
message: Your request could not be authorized.
'404':
description: Not Found
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: resource_not_found
message: Itinerary was not found with provided request.
'426':
description: Upgrade Required
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: upgrade_required
message: This service requires the use of TLS.
'429':
description: Too Many Requests
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: too_many_requests
message: You have reached your capacity for this type of request.
'500':
description: Unknown Internal Error
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: unknown_internal_error
message: An internal server error has occurred.
'503':
description: Service Unavailable
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: service_unavailable
message: This service is currently unavailable.
security:
- rapidAuth: []
delete:
tags:
- Manage Booking
summary: Expedia Group Cancel Held Booking
description: 'This link will be available in a held booking response.
'
operationId: deleteHeldBooking
parameters:
- name: Accept
in: header
description: 'Specifies the response format that the client would like to receive back. This must be `application/json`.
'
required: true
schema:
type: string
example: application/json
- name: Accept-Encoding
in: header
description: 'Specifies the response encoding that the client would like to receive back. This must be `gzip`.
'
required: true
schema:
type: string
example: gzip
- name: Customer-Ip
in: header
description: 'IP address of the customer, as captured by your integration.
Ensure your integration passes the customer''s IP, not your own. This value helps determine their location and assign the correct payment gateway.
Also used for fraud recovery and other important analytics.
'
required: true
schema:
type: string
- name: Customer-Session-Id
in: header
description: 'Insert your own unique value for each user session, beginning with the first API call.
Continue to pass the same value for each subsequent API call during the user''s session, using a new value for every new customer session.
Including this value greatly eases EPS''s internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user''s session.
'
schema:
type: string
- name: User-Agent
in: header
description: 'The `User-Agent` header string from the customer''s request, as captured by your integration. If you are building an application then the `User-Agent` value should be `{app name}/{app version}`.
'
required: true
schema:
type: string
example: TravelNow/3.30.112
- name: Test
in: header
description: 'The cancel call has a test header that can be used to return set responses with the following keywords:
* `standard` - Requires valid test held booking.
* `service_unavailable`
* `internal_server_error`
* `post_stay_cancel`
'
schema:
type: string
enum:
- standard
- service_unavailable
- internal_server_error
- post_stay_cancel
- name: itinerary_id
in: path
description: 'This parameter is used only to prefix the token value - no ID value is used.
'
required: true
schema:
type: string
example: '8955599932111'
- name: token
in: query
description: 'Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed.
'
required: true
schema:
type: string
example: MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
responses:
'202':
description: Accepted - Request is valid but the state of the booking is unknown. Make a retrieve call to verify the booking has been canceled properly.
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content: {}
'204':
description: No Content - Booking has successfully canceled.
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content: {}
'400':
description: Bad Request
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
examples:
Link Invalid Example:
value:
type: invalid_input
message: An invalid request was sent in, please check the nested errors for details.
errors:
- type: link.invalid
message: Link is invalid.
Room Already Cancelled Example:
value:
type: room_already_cancelled
message: Room is already cancelled.
'401':
description: Unauthorized
headers:
Region:
$ref: '#/components/headers/Region'
WWW-Authenticate:
description: Provides an example of the Authorization header.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: request_unauthenticated
message: Data required to authenticate your request is missing or inaccurate. Ensure that your request follows the guidelines in our documentation.
fields:
- name: apikey
type: header
value: jaj3982k239dka328e
- name: signature
type: header
value: 129d75332614a5bdbe0c7eb540e95a65f9d85a5b53dabb38d19b37fad6312a2bd25c12ee5a82831d55112087e1b
- name: timestamp
type: header
value: 198284729
- name: servertimestamp
type: server
value: 198284729
'403':
description: Forbidden
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: request_unauthorized
message: Your request could not be authorized.
'404':
description: Not Found
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: resource_not_found
message: Itinerary was not found with provided request.
'426':
description: Upgrade Required
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: upgrade_required
message: This service requires the use of TLS.
'429':
description: Too Many Requests
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: too_many_requests
message: You have reached your capacity for this type of request.
'500':
description: Unknown Internal Error
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: unknown_internal_error
message: An internal server error has occurred.
'503':
description: Service Unavailable
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: service_unavailable
message: This service is currently unavailable.
security:
- rapidAuth: []
/itineraries/{itinerary_id}/rooms/{room_id}:
put:
tags:
- Manage Booking
summary: Expedia Group Change details of a room.
description: 'This link will be available in the retrieve response. Changes in smoking preference and special request will be passed along to the property and are not guaranteed.
'
operationId: changeRoomDetails
parameters:
- name: Accept
in: header
description: 'Specifies the response format that the client would like to receive back. This must be `application/json`.
'
required: true
schema:
type: string
example: application/json
- name: Accept-Encoding
in: header
description: 'Specifies the response encoding that the client would like to receive back. This must be `gzip`.
'
required: true
schema:
type: string
example: gzip
- name: Content-Type
in: header
description: 'This parameter is to specify what format the request body is in. The only supported value is application/json.
'
required: true
schema:
type: string
example: application/json
- name: Customer-Ip
in: header
description: 'IP address of the customer, as captured by your integration.
Ensure your integration passes the customer''s IP, not your own. This value helps determine their location and assign the correct payment gateway.
Also used for fraud recovery and other important analytics.
'
required: true
schema:
type: string
- name: Customer-Session-Id
in: header
description: 'Insert your own unique value for each user session, beginning with the first API call.
Continue to pass the same value for each subsequent API call during the user''s session, using a new value for every new customer session.
Including this value greatly eases EPS''s internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user''s session.
'
schema:
type: string
- name: User-Agent
in: header
description: 'The `User-Agent` header string from the customer''s request, as captured by your integration. If you are building an application then the `User-Agent` value should be `{app name}/{app version}`.
'
required: true
schema:
type: string
example: TravelNow/3.30.112
- name: Test
in: header
description: 'The change call has a test header that can be used to return set responses with the following keywords:
* `standard` - Requires valid test booking.
* `service_unavailable`
* `unknown_internal_error`
'
schema:
type: string
enum:
- standard
- service_unavailable
- unknown_internal_error
- name: itinerary_id
in: path
description: 'This parameter is used only to prefix the token value - no ID value is used.
'
required: true
schema:
type: string
example: '8955599932111'
- name: room_id
in: path
description: 'Room ID of a property.
'
required: true
schema:
type: string
example: 123abc
- name: token
in: query
description: 'Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed.
'
required: true
schema:
type: string
example: MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
requestBody:
description: The request body is required, but only the fields that are being changed need to be passed in. Fields that are not being changed should not be included in the request body.
content:
application/json:
schema:
$ref: '#/components/schemas/ChangeRoomDetailsRequest'
required: true
responses:
'202':
description: Accepted - Request is valid but the state of the booking is unknown. Make a retrieve call to verify the booking has been changed properly.
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content: {}
'204':
description: No Content - Booking has successfully changed.
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content: {}
'400':
description: Bad Request
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: invalid_input
message: An invalid request was sent in, please check the nested errors for details.
errors:
- type: link.invalid
message: Link is invalid.
'401':
description: Unauthorized
headers:
Region:
$ref: '#/components/headers/Region'
WWW-Authenticate:
description: Provides an example of the Authorization header.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: request_unauthenticated
message: Data required to authenticate your request is missing or inaccurate. Ensure that your request follows the guidelines in our documentation.
fields:
- name: apikey
type: header
value: jaj3982k239dka328e
- name: signature
type: header
value: 129d75332614a5bdbe0c7eb540e95a65f9d85a5b53dabb38d19b37fad6312a2bd25c12ee5a82831d55112087e1b
- name: timestamp
type: header
value: 198284729
- name: servertimestamp
type: server
value: 198284729
'403':
description: Forbidden
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: request_unauthorized
message: Your request could not be authorized.
'404':
description: Not Found
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: resource_not_found
message: Itinerary was not found with provided request.
'426':
description: Upgrade Required
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: upgrade_required
message: This service requires the use of TLS.
'429':
description: Too Many Requests
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: too_many_requests
message: You have reached your capacity for this type of request.
'500':
description: Unknown Internal Error
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: unknown_internal_error
message: An internal server error has occurred.
'503':
description: Service Unavailable
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: service_unavailable
message: This service is currently unavailable.
security:
- rapidAuth: []
delete:
tags:
- Manage Booking
summary: Expedia Group Cancel a room.
description: 'This link will be available in the retrieve response.
'
operationId: deleteRoom
parameters:
- name: Accept
in: header
description: 'Specifies the response format that the client would like to receive back. This must be `application/json`.
'
required: true
schema:
type: string
example: application/json
- name: Accept-Encoding
in: header
description: 'Specifies the response encoding that the client would like to receive back. This must be `gzip`.
'
required: true
schema:
type: string
example: gzip
- name: Customer-Ip
in: header
description: 'IP address of the customer, as captured by your integration.
Ensure your integration passes the customer''s IP, not your own. This value helps determine their location and assign the correct payment gateway.
Also used for fraud recovery and other important analytics.
'
required: true
schema:
type: string
- name: Customer-Session-Id
in: header
description: 'Insert your own unique value for each user session, beginning with the first API call.
Continue to pass the same value for each subsequent API call during the user''s session, using a new value for every new customer session.
Including this value greatly eases EPS''s internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user''s session.
'
schema:
type: string
- name: User-Agent
in: header
description: 'The `User-Agent` header string from the customer''s request, as captured by your integration. If you are building an application then the `User-Agent` value should be `{app name}/{app version}`.
'
required: true
schema:
type: string
example: TravelNow/3.30.112
- name: Test
in: header
description: 'The cancel call has a test header that can be used to return set responses with the following keywords:
* `standard` - Requires valid test booking.
* `service_unavailable`
* `unknown_internal_error`
* `post_stay_cancel`
'
schema:
type: string
enum:
- standard
- service_unavailable
- unknown_internal_error
- post_stay_cancel
- name: itinerary_id
in: path
description: 'This parameter is used only to prefix the token value - no ID value is used.
'
required: true
schema:
type: string
example: '8955599932111'
- name: room_id
in: path
description: 'Room ID of a property.
'
required: true
schema:
type: string
example: 123abc
- name: token
in: query
description: 'Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed.
'
required: true
schema:
type: string
example: MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
responses:
'202':
description: Accepted - Request is valid but the state of the booking is unknown. Make a retrieve call to verify the booking has been canceled properly.
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content: {}
'204':
description: No Content - Booking has successfully canceled.
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content: {}
'400':
description: Bad Request
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: invalid_input
message: An invalid request was sent in, please check the nested errors for details.
errors:
- type: link.invalid
message: Link is invalid.
'401':
description: Unauthorized
headers:
Region:
$ref: '#/components/headers/Region'
WWW-Authenticate:
description: Provides an example of the Authorization header.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: request_unauthenticated
message: Data required to authenticate your request is missing or inaccurate. Ensure that your request follows the guidelines in our documentation.
fields:
- name: apikey
type: header
value: jaj3982k239dka328e
- name: signature
type: header
value: 129d75332614a5bdbe0c7eb540e95a65f9d85a5b53dabb38d19b37fad6312a2bd25c12ee5a82831d55112087e1b
- name: timestamp
type: header
value: 198284729
- name: servertimestamp
type: server
value: 198284729
'403':
description: Forbidden
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: request_unauthorized
message: Your request could not be authorized.
'404':
description: Not Found
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: resource_not_found
message: Itinerary was not found with provided request.
'426':
description: Upgrade Required
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: upgrade_required
message: This service requires the use of TLS.
'429':
description: Too Many Requests
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: too_many_requests
message: You have reached your capacity for this type of request.
'500':
description: Unknown Internal Error
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: unknown_internal_error
message: An internal server error has occurred.
'503':
description: Service Unavailable
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: service_unavailable
message: This service is currently unavailable.
security:
- rapidAuth: []
/itineraries/{itinerary_id}/rooms/{room_id}/pricing:
put:
tags:
- Manage Booking
summary: Expedia Group Commit a change of itinerary that may require additional payment or refund.
description: "This link will be available in the change response to confirm and complete the change transaction.\n\nIf additional charges are due, a payment must be submitted with this request. Note that Two-Factor \nAuthentication is not supported at this time.\n"
operationId: commitChange
parameters:
- name: Accept
in: header
description: 'Specifies the response format that the client would like to receive back. This must be `application/json`.
'
required: true
schema:
type: string
example: application/json
- name: Accept-Encoding
in: header
description: 'Specifies the response encoding that the client would like to receive back. This must be `gzip`.
'
required: true
schema:
type: string
example: gzip
- name: Authorization
in: header
description: The custom generated authentication header. Refer to our [signature authentication](https://developer.expediapartnersolutions.com/reference/signature-authentication) page for full details.
required: true
schema:
type: string
- name: Content-Type
in: header
description: 'This parameter is to specify what format the request body is in. The only supported value is application/json.
'
required: true
schema:
type: string
example: application/json
- name: Customer-Ip
in: header
description: 'IP address of the customer, as captured by your integration. Send IPV4 addresses only.
Ensure your integration passes the customer''s IP, not your own. This value helps determine their location and assign the correct payment gateway.
Also used for fraud recovery and other important analytics.
'
required: true
schema:
type: string
- name: Customer-Session-Id
in: header
description: 'Insert your own unique value for each user session, beginning with the first API call.
Continue to pass the same value for each subsequent API call during the user''s session, using a new value for every new customer session.
Including this value greatly eases EPS''s internal debugging process for issues with partner requests, as it explicitly links together request paths for individual user''s session.
'
schema:
type: string
- name: User-Agent
in: header
description: 'The `User-Agent` header string from the customer''s request, as captured by your integration. If you are building an application then the `User-Agent` value should be `{app name}/{app version}`.
'
required: true
schema:
type: string
example: TravelNow/3.30.112
- name: Test
in: header
description: 'The change call has a test header that can be used to return set responses with the following keywords:
* `standard` - Requires valid test booking.
* `service_unavailable`
* `unknown_internal_error`
'
schema:
type: string
enum:
- standard
- service_unavailable
- unknown_internal_error
- name: itinerary_id
in: path
description: 'This parameter is used only to prefix the token value - no ID value is used.
'
required: true
schema:
type: string
example: '8955599932111'
- name: room_id
in: path
description: 'Room ID of a property.
'
required: true
schema:
type: string
example: 123abc
- name: token
in: query
description: 'Provided as part of the link object and used to maintain state across calls. This simplifies each subsequent call by limiting the amount of information required at each step and reduces the potential for errors. Token values cannot be viewed or changed.
'
required: true
schema:
type: string
example: MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
requestBody:
description: 'The request body is required if additional payment is necessary. The body can optionally contain the `change_reference_id`.
'
content:
application/json:
schema:
$ref: '#/components/schemas/CommitChangeRoomRequestBody'
required: false
responses:
'202':
description: Accepted - Request is valid but the state of the booking is unknown. Make a retrieve call to verify the booking has been changed properly.
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content: {}
'204':
description: No Content - Booking has successfully changed.
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content: {}
'400':
description: Bad Request
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: invalid_input
message: An invalid request was sent in, please check the nested errors for details.
errors:
- type: link.invalid
message: Link is invalid.
'401':
description: Unauthorized
headers:
Region:
$ref: '#/components/headers/Region'
WWW-Authenticate:
description: Provides an example of the Authorization header.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: request_unauthenticated
message: Data required to authenticate your request is missing or inaccurate. Ensure that your request follows the guidelines in our documentation.
fields:
- name: apikey
type: header
value: jaj3982k239dka328e
- name: signature
type: header
value: 129d75332614a5bdbe0c7eb540e95a65f9d85a5b53dabb38d19b37fad6312a2bd25c12ee5a82831d55112087e1b
- name: timestamp
type: header
value: 198284729
- name: servertimestamp
type: server
value: 198284729
'403':
description: Forbidden
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: request_unauthorized
message: Your request could not be authorized.
'404':
description: Not Found
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: resource_not_found
message: Itinerary was not found with provided request.
'409':
description: Price Mismatch
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: price_mismatch
message: Payment amount did not match current price, please check price and try again.
fields:
- name: payments.amount
type: body
value: '100.00'
- name: price.amount
type: body
value: '120.00'
'410':
description: Sold Out
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: rooms_unavailable
message: One or more requested rooms are unavailable.
'426':
description: Upgrade Required
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: upgrade_required
message: This service requires the use of TLS.
'429':
description: Too Many Requests
headers:
Rate-Limit-Day:
description: Reserved for future use. Optional header for request capacity per day.
schema:
type: number
Rate-Limit-Day-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the daily time window.
schema:
type: number
Rate-Limit-Day-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the daily capacity resets.
schema:
type: number
Rate-Limit-Minute:
description: Reserved for future use. Optional header for request capacity per minute.
schema:
type: number
Rate-Limit-Minute-Remaining:
description: Optional header for the remaining capacity, as a percentage, for the per minute time window.
schema:
type: number
Rate-Limit-Minute-Reset:
description: Optional header for the timestamp, as the number of milliseconds since the Unix Epoch, when the per minute capacity resets.
schema:
type: number
Rate-Limit-Reduction-Status:
description: Optional header that indicates the state (inactive, active) of minute capacity reduction triggered once all daily capacity has been used.
schema:
type: string
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: too_many_requests
message: You have reached your capacity for this type of request.
'500':
description: Unknown Internal Error
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: unknown_internal_error
message: An internal server error has occurred.
'503':
description: Service Unavailable
headers:
Region:
$ref: '#/components/headers/Region'
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: service_unavailable
message: This service is currently unavailable.
security:
- rapidAuth: []
components:
schemas:
ItineraryHistoryItem:
type: object
properties:
history_id:
type: string
description: Itinerary history id for particular change.
event_timestamp:
type: string
description: Date and time in UTC of the change event, in extended ISO 8601 format.
event_type:
type: string
enum:
- adjustment
- coupon
amount:
$ref: '#/components/schemas/Amount'
agent_id:
type: integer
description: An agent user id number associated with a modification.
description: An itinerary history change event, representing a charge or refund made to the itinerary and not a specific room.
DepositItinerary:
type: object
properties:
currency:
type: string
description: The currency of the deposit.
value:
type: string
description: The amount required as deposit.
due:
type: string
description: The due date/time of the deposit.
description: The deposit policy associated with the itinerary.
Link:
type: object
properties:
method:
type: string
description: The request method used to access the link.
href:
type: string
description: The URL for the link. This can be absolute or relative.
expires:
type: string
description: If the link expires, this will be the UTC date the link will expire, in ISO 8601 format.
description: An individual link.
TraderDetails:
type: array
description: An array of traders.
items:
required:
- contact_message
type: object
properties:
name:
$ref: '#/components/schemas/TraderName'
address:
$ref: '#/components/schemas/TraderAddress'
business_register_name:
type: string
description: 'Name of the register where the trader is registered, and is related to the `business_register_number`
'
example: A real business register name
business_register_number:
type: string
description: 'Business registration number
'
example: 792837491b
self_certification:
type: boolean
description: 'Certification that the trader has confirmed their commitment to only offer products or services that
comply with the applicable rules of Union law.
'
example: true
contact_message:
$ref: '#/components/schemas/TraderContactMessage'
right_to_withdraw_message:
$ref: '#/components/schemas/TraderRightToWithdrawMessage'
email:
type: string
description: The trader email address.
example: travel@support.expedia.com
phone:
type: string
description: The trader phone number.
example: 0330-123-1235
description: Information of the professional entity that sells the property inventory or related services.
MerchantOfRecord:
type: string
description: '* `expedia` - Payment is taken by Expedia.
* `property` - Payment is taken by the property.
'
enum:
- expedia
- property
FeesPricingInformation:
type: object
properties:
mandatory_fee:
$ref: '#/components/schemas/ChargeCalculated'
resort_fee:
$ref: '#/components/schemas/ChargeCalculated'
mandatory_tax:
$ref: '#/components/schemas/ChargeCalculated'
description: 'The fees collected by the property. The values for each type of fee are the total for that type.
Mandatory fees are collected by the property at check-in or check-out.
Resort fees are charged for amenities and extras and collected by the property at check-in or check-out.
Mandatory taxes are taxes collected by the property at check-in or check-out.
'
ItineraryLinks:
type: object
properties:
resume:
$ref: '#/components/schemas/Link'
cancel:
$ref: '#/components/schemas/Link'
additionalProperties:
$ref: '#/components/schemas/Link'
description: A map of links, including links to resume or cancel a held booking. This is only included for held bookings.
TraderTermsAndConditions:
type: string
description: The url linking to the full text terms and conditions.
example: https://www.expedia.com/terms_and_conditions
TraderAddress:
type: object
properties:
line_1:
type: string
description: First line of customer's street address.
example: 555 1st St
line_2:
type: string
description: Second line of customer's street address.
example: 10th Floor
line_3:
type: string
description: Third line of customer's street address.
example: Unit 12
city:
type: string
description: Customer's city.
example: Seattle
state_province_code:
type: string
description: Customer's state or province code.
example: WA
postal_code:
type: string
description: Customer's postal code.
example: '98121'
country_code:
type: string
description: Customer's country code, in two-letter ISO 3166-1 alpha-2 format.
example: US
description: The trader address.
BillingContact:
type: object
properties:
given_name:
type: string
description: First/given name of the payment type account holder.
family_name:
type: string
description: Last/family name of the payment type account holder.
address:
$ref: '#/components/schemas/Address_1'
ErrorIndividual:
type: object
properties:
type:
type: string
description: The error type.
message:
type: string
description: A human readable message giving details about this error.
fields:
type: array
description: Details about the specific fields that had an error.
items:
$ref: '#/components/schemas/Field'
description: An individual error.
TraderName:
type: string
description: The trader name.
example: Expedia
ConfirmationId:
type: object
properties:
expedia:
type: string
description: The expedia confirmation id.
property:
type: string
description: The property confirmation id.
description: The confirmation ids.
RoomItinerary:
type: object
properties:
id:
type: string
description: The room id.
confirmation_id:
$ref: '#/components/schemas/ConfirmationId'
bed_group_id:
type: string
description: Unique identifier for a bed type.
checkin:
type: string
description: The check-in date of the itinerary.
checkout:
type: string
description: The check-out date of the itinerary.
number_of_adults:
type: number
description: The number of adults staying in the room.
child_ages:
type: array
description: The ages of children for the room.
items:
type: number
given_name:
type: string
description: The first name of the main guest staying in the room.
family_name:
type: string
description: The last name of the main guest staying in the room.
status:
$ref: '#/components/schemas/StatusItinerary'
special_request:
type: string
description: Any special request info associated with the room.
smoking:
type: boolean
description: Indicates if the room is smoking or non-smoking.
loyalty_id:
type: string
description: Deprecated. Please use the loyalty id inside the loyalty object.
loyalty:
$ref: '#/components/schemas/Loyalty'
rate:
$ref: '#/components/schemas/RateItinerary'
links:
$ref: '#/components/schemas/RoomItineraryLinks'
description: The room information.
Amount:
type: object
properties:
value:
type: string
description: The value of the amount object. Decimal point inline with correct precision.
currency:
type: string
description: Currency of the amount object.
description: The monetary amount.
Error:
type: object
properties:
type:
type: string
description: The error type.
message:
type: string
description: A human readable message giving details about this error.
fields:
type: array
description: Details about the specific fields that had an error.
items:
$ref: '#/components/schemas/Field'
errors:
type: array
description: An array of all the actual errors that occured.
items:
$ref: '#/components/schemas/ErrorIndividual'
description: The overall class of error that occured.
OfferType:
type: string
description: The type of offer this value add promotion is.
enum:
- buy_one_get_one_free
- credit
- discount
- free
- voucher
NightChargeType:
type: string
description: "The price breakout type.\n * `base_rate` - The room rate without any taxes and fees applied.\n * `tax_and_service_fee` - Tax recovery charges, service fees, and taxes. Ensure that you capture these values and display as:\n \"Taxes and Fees\"\n * `extra_person_fee` - A per night fee that is charged by a hotel for additional adults over the nightly rate. This fee is included as part of the total.\n * `property_fee` - The property fee surcharge type must be displayed beginning on the initial hotel room selection page, immediately after your hotel search results page. This placement is required by the U.S. Federal Trade Commission (FTC).\n Display this surcharge as \"Property Fee\" on your room selection page, as described above, and in all subsequent price breakdowns for the following Points of Sale:\n * `US`\n * `Canada`\n * `Brazil`\n * `LATAM`\n * `sales_tax` - Taxes that must be displayed by certain jurisdictional laws. Ensure that you capture these values and display as \"Taxes\".\n * `adjustment` - This is the amount that the individual night have been adjusted/discounted.\n * `recovery_charges_and_fees` - Tax recovery charges, service fees, and taxes. Ensure that you capture these values and display as:\n \"Taxes and Fees\"\n * `traveler_service_fee` - Fee charged by Vrbo to support use of online tools, services and functions on its platform which enable guest self service. May be displayed as 'Traveler Service Fee' or 'Service Fee' any time fees are broken out for display on partner sites.\n"
enum:
- base_rate
- tax_and_service_fee
- extra_person_fee
- property_fee
- sales_tax
- adjustment
- recovery_charges_and_fees
- traveler_service_fee
TraderInformation:
required:
- terms_and_conditions
type: object
properties:
traders:
$ref: '#/components/schemas/TraderDetails'
terms_and_conditions:
$ref: '#/components/schemas/TraderTermsAndConditions'
description: The professional entity or entities that sells the property inventory or related services.
Loyalty:
type: object
properties:
member_id:
type: string
description: The identifier for the individual associated with a loyalty program.
example: ABC123
program_id:
type: string
description: The identifier for the loyalty program.
example: SN
description: A loyalty object for a loyalty program.
Totals:
type: object
properties:
inclusive:
$ref: '#/components/schemas/Charge'
exclusive:
$ref: '#/components/schemas/Charge'
property_inclusive:
$ref: '#/components/schemas/Charge'
inclusive_strikethrough:
$ref: '#/components/schemas/Charge'
strikethrough:
$ref: '#/components/schemas/Charge'
property_inclusive_strikethrough:
$ref: '#/components/schemas/Charge'
marketing_fee:
$ref: '#/components/schemas/Charge'
gross_profit:
$ref: '#/components/schemas/Charge'
minimum_selling_price:
$ref: '#/components/schemas/Charge'
property_fees:
$ref: '#/components/schemas/Charge'
description: 'The total price of charges, given various criteria.
* `inclusive` - provides the total price including taxes and fees. This does not include property collected fees such as resort, mandatory taxes, and mandatory fees.
* `exclusive` - provides the total price excluding taxes and fees.
* `property_inclusive` - provides the total price including taxes, fees, and property collected fees such as resort, mandatory taxes, and mandatory fees.
* `inclusive_strikethrough` - provides the tax `inclusive` total price with any property funded discounts added back. Can be used to merchandise the savings due to a discount.
* `strikethrough` - provides the tax `exclusive` total price with any property funded discounts added back. Can be used to merchandise the savings due to a discount.
* `property_inclusive_strikethrough` - provides the tax, fees, and property collected fees `inclusive` total price with any property funded discounts added back. Can be used to merchandise the savings due to a discount.
* `marketing_fee` - provides the potential owed earnings per transaction.
* `gross_profit` - provides the estimated gross profit per transaction.
* `minimum_selling_price` - provides the minimum selling price.
* `property_fees` - provides the total of the fees collected by the property.
'
SupplyContact:
type: object
properties:
name:
type: string
description: The contact name.
example: Pat Host
phone:
$ref: '#/components/schemas/Phone'
email:
type: string
description: Email address for the contact.
example: pat_host@ilovevrbo.com
address:
$ref: '#/components/schemas/Address_1'
description: The supply contact information. Note that full details may not be displayed until a short time prior to checkin.
ChargeCalculated:
type: object
properties:
billable_currency:
$ref: '#/components/schemas/Amount'
request_currency:
$ref: '#/components/schemas/Amount'
description: An object representing a charge. Information about the charge is provided in both the billable currency and the request currency.
BillingContactRequestWithPhone:
required:
- address
- family_name
- given_name
type: object
properties:
given_name:
type: string
description: First/given name of the payment type account holder. Max 60 characters. Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded.
family_name:
type: string
description: Last/family name of the payment type account holder. Max 60 characters. Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded.
phone:
$ref: '#/components/schemas/PhoneRequest'
address:
$ref: '#/components/schemas/BillingContactRequestAddress'
Itinerary:
type: object
properties:
itinerary_id:
type: string
description: The itinerary id.
property_id:
type: string
description: The property id.
links:
$ref: '#/components/schemas/ItineraryLinks'
email:
type: string
description: Email address for the customer.
phone:
$ref: '#/components/schemas/Phone'
rooms:
type: array
items:
$ref: '#/components/schemas/RoomItinerary'
billing_contact:
$ref: '#/components/schemas/BillingContact'
adjustment:
$ref: '#/components/schemas/Adjustment'
creation_date_time:
type: string
description: The creation date/time of the booking.
affiliate_reference_id:
type: string
description: Your unique reference value. This field supports from 3 to a maximum of 28 characters.
affiliate_metadata:
type: string
description: Field that stores up to 256 characters of additional metadata with the itinerary, uniqueness is not required.
conversations:
$ref: '#/components/schemas/Conversations'
trader_information:
$ref: '#/components/schemas/TraderInformation'
essential_information:
$ref: '#/components/schemas/EssentialInformation'
travel_purpose:
type: string
description: 'Value potentially passed in during the availability request to indicate the purpose of the trip designated
by the traveler.
'
enum:
- leisure
- business
- unspecified
itinerary_history:
type: array
items:
$ref: '#/components/schemas/ItineraryHistoryItem'
room_history:
type: array
description: An array of rooms each containing an array of room history events.
items:
type: array
items:
$ref: '#/components/schemas/RoomHistoryItem'
description: The itinerary object.
Field:
type: object
properties:
name:
type: string
description: The field that had an error.
type:
type: string
description: The type of the field that had an error.
value:
type: string
description: The value of the field that had an error.
description: An individual field that had an error.
Frequency:
type: string
description: The frequency of when this applies.
enum:
- unknown
- per_night
- per_day
- per_stay
- per_week
- round_trip
- one_way
PaymentRequestWithPhone:
required:
- billing_contact
- type
type: object
properties:
type:
type: string
description: Identifier for the type of payment. If affiliate_collect, cardholder information is not required as EPS will not be processing the payment.
enum:
- corporate_card
- customer_card
- virtual_card
- affiliate_collect
number:
type: string
description: Card number. Required for credit card transactions.
security_code:
type: string
description: CVV/CSV code from the back of the customer's card. Required for credit card transactions.
expiration_month:
type: string
description: Two-digit month the credit card will expire. Required for credit card transactions.
expiration_year:
type: string
description: Year the credit card will expire. Required for credit card transactions.
billing_contact:
$ref: '#/components/schemas/BillingContactRequestWithPhone'
third_party_authentication:
$ref: '#/components/schemas/ThirdPartyAuthRequest'
enrollment_date:
type: string
description: Date the payment account was enrolled in the cardholder's account with the merchant, in ISO 8601 format (YYYY-MM-DD).
ThirdPartyAuthRequest:
required:
- cavv
- ds_transaction_id
- eci
- three_ds_version
type: object
properties:
cavv:
type: string
description: 'Cryptographic element used to indicate Authentication was successfully performed
'
eci:
type: string
description: 'Electronic Commerce Indicator. The ECI is used in payer authentication to indicate the level of security used when the cardholder provided payment information to the merchant. Its value corresponds to the authentication result and the characteristics of the merchant checkout process. Each card network, e.g., Visa, MasterCard, JCB, has specific rules around the appropriate values and use of the ECI.
'
three_ds_version:
type: string
description: 'Indicates what version of 3DS was used to authenticate the user.
'
example: xxx
ds_transaction_id:
type: string
description: 'Directory Server Transaction Id. Returned during authentication and is used as an additional parameter to validate that transaction was authenticated.
'
pa_res_status:
type: string
description: 'set only if PAResStatus value is received in the authentication response
'
ve_res_status:
type: string
description: 'set this only if PAResStatus value is received in the authentication response
if Authentication was Frictionless → AuthenticationResponse.PAResStatus,
if Authentication was a successful challenge → "C" (This is the directory response for challenge)
'
example: C
xid:
type: string
description: 'String used by both Visa and MasterCard which identifies a specific transaction on the Directory
This string value should remain consistent throughout a transaction''s history.
'
cavv_algorithm:
type: string
description: 'Used in some scenarios for 3DS 1.0.
'
ucaf_indicator:
type: string
description: 'Only received for Mastercard transactions, else can be null.
0 - Non-SecureCode transaction, bypassed by the Merchant
1 - Merchant-Only SecureCode transaction
2 - Fully authenticated SecureCode transaction
'
Stay:
type: object
properties:
type:
$ref: '#/components/schemas/StayType'
value:
type: string
description: The value of the amount object. Decimal point inline with correct precision.
currency:
type: string
description: Currency of the amount object.
EssentialInformation:
type: object
properties:
contact:
$ref: '#/components/schemas/SupplyContact'
essentials:
type: array
items:
$ref: '#/components/schemas/Essential'
update_available_date:
type: string
description: The date and time when new essential information is available for retrieval, in extended ISO 8601 format, with ±hh:mm timezone offset.
example: '2022-08-12T11:59:00-08:00'
description: Essential information, including the supply contact information and any other essential information.
NonrefundableDateRange:
type: object
properties:
start:
type: string
description: Start date of nonrefundable date range in ISO 8601 format.
end:
type: string
description: End date of nonrefundable date range in ISO 8601 format.
RoomItineraryLinks:
type: object
properties:
cancel:
$ref: '#/components/schemas/Link'
change:
$ref: '#/components/schemas/Link'
shop_for_change:
$ref: '#/components/schemas/Link'
additionalProperties:
$ref: '#/components/schemas/Link'
description: "A map of links -\n* `cancel` - Cancel the booking for this room\n* `change` - A PUT call to modify the details of the booking for this room (soft change)\n* `shop_for_change` - Shop for rates to evaluate for possible rebooking. This shop call will show the estimated financial impact of the change.
\n Current parameters supported in shop for change: `checkin`, `checkout`, `occupancy` See: [additional rates](#get-/properties/-property_id-/availability)\n"
CancelPenalty:
type: object
properties:
currency:
type: string
description: Currency of the amount object.
start:
type: string
description: Effective date and time of cancellation penalty in extended ISO 8601 format, with ±hh:mm timezone offset
end:
type: string
description: End date and time of cancellation penalty in extended ISO 8601 format, with ±hh:mm timezone offset
amount:
type: string
description: The monetary amount of the penalty.
nights:
type: string
description: Number of nights charged for as penalty.
percent:
type: string
description: Percentage of total booking charged for as penalty. A thirty percent penalty would be returned as 30%
Adjustment:
type: object
properties:
value:
type: string
description: The amount of the adjustment.
type:
type: string
description: The type of the adjustment.
currency:
type: string
description: The currency of the adjustment.
description: Any price adjustments associated with this itinerary.
RoomHistoryItem:
type: object
properties:
history_id:
type: string
description: Room history id for particular change.
event_timestamp:
type: string
description: Date and time in UTC of the change event, in extended ISO 8601 format.
event_type:
type: string
description: Type type of event associated with this history item such as modified or canceled.
enum:
- created
- modified
- canceled
event_source:
type: string
description: The source of the event. If `voyager_agent`, `agent_id` will be supplied.
enum:
- rapid_api
- voyager_agent
- other
change_reference_id:
type: string
description: Optional identifier provided during changes via Rapid.
agent_id:
type: integer
description: An agent user id number associated with a modification.
room_id:
type: string
description: The room id.
confirmation_id:
$ref: '#/components/schemas/ConfirmationId'
bed_group_id:
type: string
description: Unique identifier for a bed type.
checkin:
type: string
description: The check-in date of the itinerary.
checkout:
type: string
description: The check-out date of the itinerary.
number_of_adults:
type: number
description: The number of adults staying in the room.
child_ages:
type: array
description: The ages of children for the room.
items:
type: number
given_name:
type: string
description: The first name of the main guest staying in the room.
family_name:
type: string
description: The last name of the main guest staying in the room.
status:
$ref: '#/components/schemas/StatusItinerary'
special_request:
type: string
description: Any special request info associated with the room.
smoking:
type: boolean
description: Indicates if the room is smoking or non-smoking.
loyalty_id:
type: string
description: A loyalty identifier for a hotel loyalty program associated with this room guest.
amount_charged:
$ref: '#/components/schemas/Charge'
amount_refunded:
$ref: '#/components/schemas/Charge'
penalty:
$ref: '#/components/schemas/Charge'
rate:
$ref: '#/components/schemas/RateHistory'
description: A room history event, representing a change made to a specific room.
CancelRefund:
type: object
properties:
amount:
type: string
description: The amount of the refund on cancelling the itinerary.
currency:
type: string
description: The currency of the refund amount.
description: The refund information for cancelling the itinerary.
TraderRightToWithdrawMessage:
type: string
description: The trader right to withdraw message.
example: If you cancel your booking, you'll be subject to the property's cancellation policy. In accordance with EU regulations about consumer rights, property booking services are not subject to the right to withdraw.
Conversations:
type: object
properties:
links:
type: object
additionalProperties:
$ref: '#/components/schemas/Link'
description: Contains urls for links to initiate conversations via EPS.
description: Details about initiating conversations.
ValueAdd:
type: object
properties:
id:
type: string
description: Unique identifier for the value add promotion.
description:
type: string
description: A localized description of the value add promotion.
category:
$ref: '#/components/schemas/CategoryValueAdd'
offer_type:
$ref: '#/components/schemas/OfferType'
frequency:
$ref: '#/components/schemas/Frequency'
person_count:
type: number
description: Indicates how many guests the value add promotion applies to.
description: An individual value add.
BillingContactRequestAddress:
required:
- country_code
type: object
properties:
line_1:
type: string
description: First line of customer's street address. Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded. Only ISO-8859-1 compliant characters are allowed.
line_2:
type: string
description: Second line of customer's street address. Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded. Only ISO-8859-1 compliant characters are allowed.
line_3:
type: string
description: Third line of customer's street address. Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded. Only ISO-8859-1 compliant characters are allowed.
city:
type: string
description: Customer's city. Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded. Only ISO-8859-1 compliant characters are allowed.
state_province_code:
type: string
description: Customer's state or province code. Mandatory for AU, CA and US. Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded. Only ISO-8859-1 compliant characters are allowed.
postal_code:
type: string
description: Customer's postal code. Mandatory for CA, GB, and US. Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded. Only ISO-8859-1 compliant characters are allowed.
country_code:
type: string
description: Customer's country code, in two-letter ISO 3166-1 alpha-2 format. Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded. Only ISO-8859-1 compliant characters are allowed.
PromotionsItinerary:
type: object
properties:
value_adds:
type: object
additionalProperties:
$ref: '#/components/schemas/ValueAdd'
description: Promotions provided by the property that add value to the stay, but don’t affect the booking price (i.e., ski lift tickets or premium wifi).
description: Promotions that apply to the booked room.
Charge:
type: object
properties:
billable_currency:
$ref: '#/components/schemas/Amount'
request_currency:
$ref: '#/components/schemas/Amount'
description: An object representing a charge. Information about the charge is provided in both the billable currency and the request currency.
Address_1:
type: object
properties:
line_1:
type: string
description: First line of street address.
example: 555 1st St.
line_2:
type: string
description: Second line of street address.
example: 10th Floor
line_3:
type: string
description: Third line of street address.
example: Unit 12
city:
type: string
description: City where address is located.
example: Seattle
state_province_code:
type: string
description: State or province code of address, if applicable.
example: WA
postal_code:
type: string
description: Postal code of address, if applicable.
example: '98121'
country_code:
type: string
description: Country code, in two-letter ISO 3166-1 alpha-2 format.
example: US
CategoryValueAdd:
type: string
description: The general category that this value add promotion falls into.
enum:
- food_and_beverage
- entertainment
- service
- activity
- credit
PricingInformation:
type: object
properties:
nightly:
type: array
description: Array of arrays of amount objects. Each sub-array of amount objects represents a single night's charges.
items:
type: array
items:
$ref: '#/components/schemas/NightCharge'
stay:
type: array
description: Array of amount objects. Details any charges that apply to the entire stay (not divided per-night). Any per-room adjustments are applied to the `base_rate` amount within this object.
items:
$ref: '#/components/schemas/Stay'
totals:
$ref: '#/components/schemas/Totals'
fees:
$ref: '#/components/schemas/FeesPricingInformation'
description: The pricing information object.
Image_1:
type: object
properties:
url:
type: string
description: The url of the image.
example: https://www.expedia.com/logo.svg
width:
type: string
description: The width of the image.
example: '144'
height:
type: string
description: The height of the image.
example: '32'
NightCharge:
type: object
properties:
type:
$ref: '#/components/schemas/NightChargeType'
value:
type: string
description: The value of the amount object. Decimal point inline with correct precision.
currency:
type: string
description: Currency of the amount object.
PhoneRequest:
required:
- country_code
- number
type: object
properties:
country_code:
type: string
description: The numerical portion of the country code from the phone number. Do not include the leading '+' character. Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded.
area_code:
type: string
description: The area code of the phone number. Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded.
number:
type: string
description: The remaining digits of the phone number. Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded.
description: The entire phone number must be represented across the three fields in this object. The entire phone number should not exceed 25 characters.
CommitChangeRoomRequestBody:
type: object
properties:
change_reference_id:
type: string
description: 'Your optional identifier for the change being executed. Only unique per itinerary.
Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded.
'
payments:
type: array
items:
$ref: '#/components/schemas/PaymentRequestWithPhone'
example:
change_reference_id: v1-John
payments:
- type: customer_card
number: '4111111111111111'
security_code: '123'
expiration_month: 08
expiration_year: '2025'
billing_contact:
given_name: John
family_name: Smith
address:
line_1: 555 1st St
line_2: 10th Floor
line_3: Unit 12
city: Seattle
state_province_code: WA
postal_code: '98121'
country_code: US
third_party_authentication:
cavv: jELUbgG+Tgj0AREBDMLeCad+oIs=
eci: '05'
three_ds_version: 2.2.0
ds_transaction_id: ac01cc2b-c1a1-4981-8c6f-400d4eec88de
pa_res_status: Y
ve_res_status: C
xid: 47133847-13be-4ae3-9be9-e4053b9c83c0
cavv_algorithm: '3'
ucaf_indicator: '0'
enrollment_date: '2018-09-15'
StayType:
type: string
description: The price breakout type.
enum:
- base_rate
- tax_and_service_fee
- extra_person_fee
- property_fee
- sales_tax
- adjustment
- recovery_charges_and_fees
- traveler_service_fee
Phone:
type: object
properties:
country_code:
type: string
description: The numerical portion of the country code from the phone number. Do not include the leading '+' character.
example: '1'
area_code:
type: string
description: The area code of the phone number.
example: '487'
number:
type: string
description: The remaining digits of the phone number.
example: '5550077'
description: The entire phone number must be represented across the three fields in this object.
TraderContactMessage:
type: string
description: The trader contact message.
example: This property is managed by a professional host. The provision of housing is linked to their trade, business or profession.
StatusItinerary:
type: string
description: The booking status of the room.
enum:
- pending
- booked
- canceled
Essential:
type: object
properties:
name:
type: string
description: The name of the essential item.
example: access
instructions:
type: string
description: The instructions for use of the essential item.
example: Use the smart lock located at the side door for access.
additional_info:
type: object
additionalProperties:
type: string
description: A map of additional information that needs to be conveyed to customer.
example:
access_type: Smart lock
access_code: '12345'
images:
type: array
description: An array of images needed for the essential item.
items:
$ref: '#/components/schemas/Image_1'
RateHistory:
type: object
properties:
id:
type: string
description: The id of the rate.
promotions:
$ref: '#/components/schemas/PromotionsItinerary'
cancel_penalties:
type: array
description: The cancel penalties associated with the itinerary.
items:
$ref: '#/components/schemas/CancelPenalty'
deposits:
type: array
items:
$ref: '#/components/schemas/DepositItinerary'
pricing:
$ref: '#/components/schemas/PricingInformation'
description: The rate information associated with the itinerary.
RateItinerary:
type: object
properties:
id:
type: string
description: The id of the rate.
merchant_of_record:
$ref: '#/components/schemas/MerchantOfRecord'
refundable:
type: boolean
description: Indicates whether the itinerary is refundable or not.
cancel_refund:
$ref: '#/components/schemas/CancelRefund'
amenities:
type: array
items:
type: string
description: The amenity id associated with the itinerary.
promotions:
$ref: '#/components/schemas/PromotionsItinerary'
cancel_penalties:
type: array
description: The cancel penalties associated with the itinerary.
items:
$ref: '#/components/schemas/CancelPenalty'
nonrefundable_date_ranges:
type: array
description: 'A list of date exceptions. Dates within these ranges provide no refund on cancellation, regardless of
cancel penalty windows. Nonrefundable range begins at 00:00:00 on the start date, and ends at 23:59:59 on
the end date, in the local time zone of the property.
'
items:
$ref: '#/components/schemas/NonrefundableDateRange'
deposits:
type: array
items:
$ref: '#/components/schemas/DepositItinerary'
card_on_file_limit:
$ref: '#/components/schemas/Amount'
refundable_damage_deposit:
$ref: '#/components/schemas/Amount'
pricing:
$ref: '#/components/schemas/PricingInformation'
description: The rate information associated with the itinerary.
ChangeRoomDetailsRequest:
type: object
properties:
given_name:
type: string
description: First name of room guest. Max 60 characters. Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded.
family_name:
type: string
description: Last name of room guest. Max 60 characters. Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded.
smoking:
type: boolean
description: Specify if the guest would prefer a smoking room. This field is only a request and the property is not guaranteed to honor it, it will not override any non-smoking policies by the hotel.
special_request:
type: string
description: Special requests to send to hotel (not guaranteed). Do not use this field to communicate B2B customer service requests or pass any sensitive personal or financial information (PII). Special characters ("<", ">", "(", ")", and "&") entered in this field will be re-encoded.
loyalty_id:
type: string
description: Deprecated. Please use the loyalty id inside the loyalty object.
loyalty:
$ref: '#/components/schemas/Loyalty'
example:
given_name: John
family_name: Smith
smoking: false
special_request: Top floor or away from street please
loyalty_id: ABC123
loyalty:
member_id: ABD123
program_id: SN
headers:
Region:
description: Optional header that provides information about where the request was processed.
style: simple
explode: false
schema:
type: string
example: us-west-2
securitySchemes:
Basic:
type: http
scheme: basic