openapi: 3.0.1
info:
title: Expedia Group EPS Deposit Bookings Shopping 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: Shopping
description: The EPS shopping APIs provide you with access to live rates & availability.
paths:
/properties/availability:
get:
tags:
- Shopping
summary: Expedia Group Get property room rates and availability
description: 'Returns rates on available room types for specified properties (maximum of 250 properties per request). The response includes rate details such as promos, whether the rate is refundable, cancellation penalties and a full price breakdown to meet the price display requirements for your market.
_Note_: If there are no available rooms, the response will be an empty array.
* Multiple rooms of the same type may be requested by including multiple instances of the `occupancy` parameter.
* The `nightly` array includes each individual night''s charges. When the total price includes fees, charges, or adjustments that are not divided by night, these amounts will be included in the `stay` rate array, which details charges applied to the entire stay (each check-in).
'
operationId: getAvailability
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: 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-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.
'
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: Test
in: header
description: 'Shop calls have a test header that can be used to return set responses with the following keywords:
* `standard`
* `service_unavailable`
* `unknown_internal_error`
'
schema:
type: string
enum:
- standard
- service_unavailable
- unknown_internal_error
- name: checkin
in: query
description: 'Check-in date, in ISO 8601 format (YYYY-MM-DD). This can be up to 365 days in the future. Some partner configurations may extend this up to 500 days.
'
required: true
schema:
type: string
example: '2024-08-01'
- name: checkout
in: query
description: 'Check-out date, in ISO 8601 format (YYYY-MM-DD). Total length of stay cannot exceed 28 nights or 365 nights depending on Vacation Rental configurations.
'
required: true
schema:
type: string
example: '2024-08-03'
- name: currency
in: query
description: 'Requested currency for the rates, in ISO 4217 format
Currency Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/currency-options](https://developers.expediagroup.com/docs/rapid/resources/reference/currency-options)
'
required: true
schema:
type: string
example: USD
- name: country_code
in: query
description: 'The country code of the traveler''s point of sale, in ISO 3166-1 alpha-2 format. This should represent the country where the shopping transaction is taking place.
For more information see: [https://www.iso.org/obp/ui/#search/code/](https://www.iso.org/obp/ui/#search/code/)
'
required: true
schema:
type: string
example: US
- name: language
in: query
description: 'Desired language for the response as a subset of BCP47 format that only uses hyphenated pairs of two-digit language and country codes. Use only ISO 639-1 alpha-2 language codes and ISO 3166-1 alpha-2 country codes. See [https://www.w3.org/International/articles/language-tags/](https://www.w3.org/International/articles/language-tags/)
Language Options: [https://developers.expediagroup.com/docs/rapid/resources/reference/language-options](https://developers.expediagroup.com/docs/rapid/resources/reference/language-options)
'
required: true
schema:
type: string
example: en-US
- name: occupancy
in: query
description: 'Defines the requested occupancy for a single room. Each room must have at least 1 adult occupant.
Format: `numberOfAdults[-firstChildAge[,nextChildAge]]`
To request multiple rooms (of the same type), include one instance of occupancy for each room requested. Up to 8 rooms may be requested or booked at once.
Examples:
* 2 adults, one 9-year-old and one 4-year-old would be represented by `occupancy=2-9,4`.
* A multi-room request to lodge an additional 2 adults would be represented by `occupancy=2-9,4&occupancy=2`
'
required: true
style: form
explode: true
schema:
type: array
items:
type: string
example: 2
- name: property_id
in: query
description: 'The ID of the property you want to search for. You can provide 1 to 250 property_id parameters.
'
required: true
style: form
explode: true
schema:
type: array
items:
type: string
example:
- 20321
- name: rate_plan_count
in: query
description: 'The number of rates to return per property. The rates with the best value will be returned, e.g. a rate_plan_count=4 will return the best 4 rates, but the rates are not ordered from lowest to highest or vice versa in the response. Generally lowest rates will be prioritized.
The value must be between 1 and 250.
'
required: true
schema:
type: number
example: 1
- name: sales_channel
in: query
description: 'You must provide the sales channel for the display of rates. EPS dynamically provides the best content for optimal conversion on each sales channel. If you have a sales channel that is not currently supported in this list, please contact our support team.
* `website` - Standard website accessed from the customer''s computer
* `agent_tool` - Your own agent tool used by your call center or retail store agent
* `mobile_app` - An application installed on a phone or tablet device
* `mobile_web` - A web browser application on a phone or tablet device
* `meta` - Rates will be passed to and displayed on a 3rd party comparison website
* `cache` - Rates will be used to populate a local cache
'
required: true
schema:
type: string
example: website
- name: sales_environment
in: query
description: 'You must provide the sales environment in which rates will be sold. EPS dynamically provides the best content for optimal conversion. If you have a sales environment that is not currently supported in this list, please contact our support team.
* `hotel_package` - Use when selling the hotel with a transport product, e.g. flight & hotel.
* `hotel_only` - Use when selling the hotel as an individual product.
* `loyalty` - Use when you are selling the hotel as part of a loyalty program and the price is converted to points.
'
required: true
schema:
type: string
example: hotel_only
- name: amenity_category
in: query
description: 'Single amenity category. Send multiple instances of this parameter to request rates that match multiple amenity categories.
See the Amenity Categories section of the
[Content Reference Lists](https://developers.expediagroup.com/docs/rapid/lodging/content/content-reference-lists)
for a list of values.
'
style: form
explode: true
schema:
type: array
items:
type: string
example:
- swimming_pool
- name: exclusion
in: query
description: 'Single exclusion type. Send multiple instances of this parameter to request multiple exclusions.
* `refundable_damage_deposit` - Excludes rates with refundable damage deposits from the response.
'
schema:
type: array
items:
type: string
enum:
- refundable_damage_deposit
example:
- refundable_damage_deposit
- name: filter
in: query
description: 'Single filter type. Send multiple instances of this parameter to request multiple filters.
* `refundable` - Filters results to only show fully refundable rates.
* `expedia_collect` - Filters results to only show rates where payment is collected by Expedia at the time of booking. These properties can be eligible for payments via Expedia Affiliate Collect(EAC).
* `property_collect` - Filters results to only show rates where payment is collected by the property after booking. This can include rates that require a deposit by the property, dependent upon the deposit policies.
* `loyalty` - Filters results to only show rates that are eligible for loyalty points.
'
style: form
explode: true
schema:
type: array
items:
type: string
enum:
- refundable
- expedia_collect
- property_collect
example:
- expedia_collect
- name: include
in: query
description: 'Modify the response by including types of responses that are not provided by default.
* `unavailable_reason` - When a property is unavailable for an actionable reason, return a response with that reason - See [Unavailable Reason Codes](https://developers.expediagroup.com/docs/rapid/resources/reference/unavailable-reason-codes) for possible values.
* `sale_scenario.mobile_promotion` - Enable the `mobile_promotion` flag under the `room.rate.sale_scenario` section of the response.
* `rooms.rates.marketing_fee_incentives` - When a rate has a marketing fee incentive applied, the response will include the `marketing_fee_incentives` array if this flag is provided in the request.
'
schema:
type: array
items:
type: string
enum:
- unavailable_reason
- sale_scenario.mobile_promotion
- rooms.rates.marketing_fee_incentives
example: unavailable_reason
- name: rate_option
in: query
description: 'Request specific rate options for each property. Send multiple instances of this parameter to request multiple rate options.
Accepted values:
* `member` - Return member rates for each property. This feature must be enabled and requires a user to be logged in to request these rates.
* `net_rates` - Return net rates for each property. This feature must be enabled to request these rates.
* `cross_sell` - Identify if the traffic is coming from a cross sell booking. Where the traveler has booked another service (flight, car, activities...) before hotel.
'
style: form
explode: true
schema:
type: array
items:
type: string
enum:
- member
- net_rates
- cross_sell
- name: travel_purpose
in: query
description: 'This parameter is to specify the travel purpose of the booking. This may impact available rate plans, pricing, or tax calculations.
* `leisure`
* `business`
'
schema:
type: string
enum:
- leisure
- business
example: leisure
- name: billing_terms
in: query
description: 'This parameter is to specify the terms of how a resulting booking should be billed. If this field is needed, the value for this will be provided to you separately.
'
schema:
type: string
- name: payment_terms
in: query
description: 'This parameter is to specify what terms should be used when being paid for a resulting booking. If this field is needed, the value for this will be provided to you separately.
'
schema:
type: string
- name: partner_point_of_sale
in: query
description: 'This parameter is to specify what point of sale is being used to shop and book. If this field is needed, the value for this will be provided to you separately.
'
schema:
type: string
- name: platform_name
in: query
description: 'This parameter is to specify what platform is being used to shop and book. If this field is needed, the value for this will be provided to you separately.
'
schema:
type: string
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/Property'
examples:
Availability:
value:
- property_id: '19248'
status: available
rooms:
- id: 123abc
room_name: Fancy Queen Room
rates:
- id: 333abc
status: available
available_rooms: 12
refundable: true
member_deal_available: true
sale_scenario:
package: false
member: false
corporate: false
distribution: false
mobile_promotion: false
merchant_of_record: expedia
amenities:
'1234':
id: '1234'
name: Free Wireless Internet
links:
payment_options:
method: GET
href: /v3/properties/19248/payment-options?token=MY5S3j36cOcL
bed_groups:
'12345':
links:
price_check:
method: GET
href: /v3/properties/19248/rooms/abc123/rates/abc123?token=MY5S3j36cOcL
expires: '2019-03-05T07:23:14.000Z'
id: '12345'
description: 1 Queen Bed
configuration:
- type: Bed
size: Queen
quantity: 1
cancel_penalties:
- currency: USD
start: '2018-02-12T11:59:00.000-08:00'
end: '2018-02-12T11:59:00.000-08:00'
amount: '10.00'
nonrefundable_date_ranges:
- start: '2022-02-02'
end: '2022-02-02'
marketing_fee_incentives:
- source: property
start: '2022-02-02'
end: '2022-02-02'
occupancy_pricing:
'2':
nightly:
- - type: base_rate
value: '309.00'
currency: CAD
- type: tax_and_service_fee
value: '37.00'
currency: CAD
- - type: base_rate
value: '309.00'
currency: CAD
- type: tax_and_service_fee
value: '37.00'
currency: CAD
stay:
- type: extra_person_fee
value: '10.00'
currency: CAD
totals:
inclusive:
billable_currency:
value: '702.00'
currency: CAD
request_currency:
value: '530.00'
currency: USD
exclusive:
billable_currency:
value: '628.00'
currency: CAD
request_currency:
value: '475.00'
currency: USD
property_inclusive:
billable_currency:
value: '717.00'
currency: CAD
request_currency:
value: '539.00'
currency: USD
strikethrough:
billable_currency:
value: '650.00'
currency: CAD
request_currency:
value: '490.00'
currency: USD
property_inclusive_strikethrough:
billable_currency:
value: '750.00'
currency: CAD
request_currency:
value: '565.00'
currency: USD
marketing_fee:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '10.00'
currency: USD
gross_profit:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '10.00'
currency: USD
minimum_selling_price:
billable_currency:
value: '702.00'
currency: CAD
request_currency:
value: '530.00'
currency: USD
property_fees:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '9.00'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.00'
currency: USD
resort_fee:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.00'
currency: USD
mandatory_tax:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.00'
currency: USD
1-7,10:
nightly:
- - type: base_rate
value: '309.00'
currency: CAD
- type: tax_and_service_fee
value: '37.00'
currency: CAD
- - type: base_rate
value: '309.00'
currency: CAD
- type: tax_and_service_fee
value: '37.00'
currency: CAD
stay:
- type: extra_person_fee
value: '10.00'
currency: CAD
totals:
inclusive:
billable_currency:
value: '702.00'
currency: CAD
request_currency:
value: '530.00'
currency: USD
exclusive:
billable_currency:
value: '628.00'
currency: CAD
request_currency:
value: '475.00'
currency: USD
strikethrough:
billable_currency:
value: '650.00'
currency: CAD
request_currency:
value: '490.00'
currency: USD
marketing_fee:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '10.00'
currency: USD
gross_profit:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '10.00'
currency: USD
minimum_selling_price:
billable_currency:
value: '702.00'
currency: CAD
request_currency:
value: '530.00'
currency: USD
property_fees:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '9.00'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.00'
currency: USD
resort_fee:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.00'
currency: USD
mandatory_tax:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.00'
currency: USD
promotions:
value_adds:
123abc:
id: 123abc
description: 10 USD credit on activities and sports for your stay.
category: entertainment
offer_type: credit
frequency: per_stay
person_count: 1
deal:
id: 999abc
description: Book early and save 15%
card_on_file_limit:
value: '500.00'
currency: USD
refundable_damage_deposit:
value: '500.00'
currency: USD
deposits:
- value: '70.00'
due: '2025-12-21'
currency: USD
links:
additional_rates:
method: GET
href: /v3/properties/12345/availability?token=MY5S3j36cOcL
score: 10052
Availability and Unavailable Reason:
value:
- property_id: '824739'
status: partially_unavailable
score: 12345
unavailable_reason:
code: adults_exceed_threshold
data: '2'
- property_id: '19248'
status: available
rooms:
- id: 123abc
room_name: Fancy Queen Room
rates:
- id: 333abc
status: available
available_rooms: 12
refundable: true
member_deal_available: true
sale_scenario:
package: false
member: false
corporate: false
distribution: false
mobile_promotion: false
merchant_of_record: expedia
amenities:
'1234':
id: '1234'
name: Free Wireless Internet
links:
payment_options:
method: GET
href: /v3/properties/19248/payment-options?token=MY5S3j36cOcL
bed_groups:
'12345':
links:
price_check:
method: GET
href: /v3/properties/19248/rooms/abc123/rates/abc123?token=MY5S3j36cOcL
expires: '2019-03-05T07:23:14.000Z'
id: '12345'
description: 1 Queen Bed
configuration:
- type: Bed
size: Queen
quantity: 1
cancel_penalties:
- currency: USD
start: '2018-02-12T11:59:00.000-08:00'
end: '2018-02-12T11:59:00.000-08:00'
amount: '10.00'
nonrefundable_date_ranges:
- start: '2022-02-02'
end: '2022-02-02'
occupancy_pricing:
'2':
nightly:
- - type: base_rate
value: '309.00'
currency: CAD
- type: tax_and_service_fee
value: '37.00'
currency: CAD
- - type: base_rate
value: '309.00'
currency: CAD
- type: tax_and_service_fee
value: '37.00'
currency: CAD
stay:
- type: extra_person_fee
value: '10.00'
currency: CAD
totals:
inclusive:
billable_currency:
value: '702.00'
currency: CAD
request_currency:
value: '530.97'
currency: USD
exclusive:
billable_currency:
value: '628.00'
currency: CAD
request_currency:
value: '475.00'
currency: USD
inclusive_strikethrough:
billable_currency:
value: '726.63'
currency: CAD
request_currency:
value: '549.60'
currency: USD
strikethrough:
billable_currency:
value: '650.00'
currency: CAD
request_currency:
value: '491.64'
currency: USD
marketing_fee:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '11.34'
currency: USD
gross_profit:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '11.34'
currency: USD
minimum_selling_price:
billable_currency:
value: '702.00'
currency: CAD
request_currency:
value: '530.97'
currency: USD
property_fees:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '11.34'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.78'
currency: USD
resort_fee:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.78'
currency: USD
mandatory_tax:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.78'
currency: USD
1-7,10:
nightly:
- - type: base_rate
value: '309.00'
currency: CAD
- type: tax_and_service_fee
value: '37.00'
currency: CAD
- - type: base_rate
value: '309.00'
currency: CAD
- type: tax_and_service_fee
value: '37.00'
currency: CAD
stay:
- type: extra_person_fee
value: '10.00'
currency: CAD
totals:
inclusive:
billable_currency:
value: '702.00'
currency: CAD
request_currency:
value: '530.97'
currency: USD
exclusive:
billable_currency:
value: '628.00'
currency: CAD
request_currency:
value: '475.00'
currency: USD
inclusive_strikethrough:
billable_currency:
value: '726.63'
currency: CAD
request_currency:
value: '549.60'
currency: USD
strikethrough:
billable_currency:
value: '650.00'
currency: CAD
request_currency:
value: '491.64'
currency: USD
marketing_fee:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '11.34'
currency: USD
gross_profit:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '11.34'
currency: USD
minimum_selling_price:
billable_currency:
value: '702.00'
currency: CAD
request_currency:
value: '530.97'
currency: USD
property_fees:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '11.34'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.78'
currency: USD
resort_fee:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.78'
currency: USD
mandatory_tax:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.78'
currency: USD
promotions:
value_adds:
123abc:
id: 123abc
description: 10 USD credit on activities and sports for your stay.
category: entertainment
offer_type: credit
frequency: per_stay
person_count: 1
deal:
id: 999abc
description: Book early and save 15%
card_on_file_limit:
value: '500.00'
currency: USD
refundable_damage_deposit:
value: '500.00'
currency: USD
deposits:
- value: '70.00'
due: '2025-12-21'
currency: USD
links:
additional_rates:
method: GET
href: /v3/properties/12345/availability?token=MY5S3j36cOcL
score: 10052
No availability:
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: checkin.invalid_date_format
message: Invalid checkin format. It must be formatted in ISO 8601 (YYYY-mm-dd) http://www.iso.org/iso/catalogue_detail?csnumber=40874.
fields:
- name: checkin
type: querystring
value: 2019-01-1
- type: checkout.invalid_length_of_stay_too_long_vrbo
message: 'Invalid date range. Checkin and checkout dates cannot differ by more than 365 days.
'
fields:
- name: checkin
type: querystring
value: '2024-09-21'
- name: checkout
type: querystring
value: '2025-10-21'
- type: number_of_occupancies.invalid_above_maximum
message: Number of occupancies must be less than 9.
fields:
- name: occupancy
type: querystring
value: '9'
- type: include.not_supported
message: 'Include value not supported. Supported include values are: [unavailable_reason]
'
fields:
- name: include
type: querystring
value: free_money
'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: []
/properties/{property_id}/availability:
get:
tags:
- Shopping
summary: Expedia Group Get additional property room rates and availability
description: 'Returns additional rates on available room types, using the parameters of the previous call. The response includes rate details such as promos, whether the rate is refundable, cancellation penalties and a full price breakdown to meet the price display requirements for your market.
_Note_: If there are no available rooms, the response will be an empty array.
* The `nightly` array includes each individual night''s charges. When the total price includes fees, charges, or adjustments that are not divided by night, these amounts will be included in the `stay` rate array, which details charges applied to the entire stay (each check-in).
'
operationId: getAdditionalAvailability
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: 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-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.
'
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: Test
in: header
description: 'Shop calls have a test header that can be used to return set responses with the following keywords:
* `standard`
* `service_unavailable`
* `unknown_internal_error`
* `no_availability`
* `forbidden`
'
schema:
type: string
enum:
- standard
- service_unavailable
- unknown_internal_error
- no_availability
- forbidden
- name: property_id
in: path
description: 'Expedia Property ID.
'
required: true
schema:
type: string
example: 19248
- name: token
in: query
description: A hashed collection of query parameters. Used to maintain state across calls. This token is provided as part of the `additional_rates` link from the shop response, or the `shop` link on a `sold_out` price check response. It is also provided from the `shop_for_change` link on an itinerary retrieve.
required: true
schema:
type: string
- name: checkin
in: query
description: 'Check-in date, in ISO 8601 format (YYYY-MM-DD). This can be up to 365 days in the future. Some partner configurations may extend this up to 500 days.
Note: Only needed for hard change if desired check-in date is different than original booking.
If specified must also specify `checkout`.
'
schema:
type: string
example: '2024-08-01'
- name: checkout
in: query
description: 'Check-out date, in ISO 8601 format (YYYY-MM-DD). Total length of stay cannot exceed 28 nights or 365 nights depending on Vacation Rental configurations.
Note: Only needed for hard change if desired check-out date is different than original booking.
If specified must also specify `checkin`.
'
schema:
type: string
example: '2024-08-03'
- name: exclusion
in: query
description: 'Single exclusion type. Send multiple instances of this parameter to request multiple exclusions.
Note: Optional parameter for use with hard change requests.
* `refundable_damage_deposit` - Excludes rates with refundable damage deposits from the response.
'
style: form
explode: true
schema:
type: array
items:
type: string
enum:
- refundable_damage_deposit
example:
- refundable_damage_deposit
- name: filter
in: query
description: 'Single filter type. Send multiple instances of this parameter to request multiple filters.
Note: Optional parameter for use with hard change requests.
This parameter cannot be set to `property_collect` if the existing booking is `expedia_collect` and vice versa.
* `refundable` - Filters results to only show fully refundable rates.
* `expedia_collect` - Filters results to only show rates where payment is collected by Expedia at the time of booking. These properties can be eligible for payments via Expedia Affiliate Collect(EAC).
* `property_collect` - Filters results to only show rates where payment is collected by the property after booking. This can include rates that require a deposit by the property, dependent upon the deposit policies.
* `loyalty` - Filters results to only show rates that are eligible for loyalty points.
'
style: form
explode: true
schema:
type: array
items:
type: string
enum:
- refundable
- expedia_collect
- property_collect
example:
- refundable
- expedia_collect
- name: include
in: query
description: 'Modify the response by including types of responses that are not provided by default.
* `sale_scenario.mobile_promotion` - Enable the `mobile_promotion` flag under the `sale_scenario` section of the response.
'
schema:
type: array
items:
type: string
enum:
- sale_scenario.mobile_promotion
example: sale_scenario.mobile_promotion
- name: occupancy
in: query
description: 'Defines the requested occupancy for a single room. Each room must have at least 1 adult occupant.
Format: `numberOfAdults[-firstChildAge[,nextChildAge]]`
To request multiple rooms (of the same type), include one instance of occupancy for each room requested. Up to 8 rooms may be requested or booked at once.
Note: Only needed for hard change if desired occupancy is different than original booking.
Examples:
* 2 adults, one 9-year-old and one 4-year-old would be represented by `occupancy=2-9,4`.
* A multi-room request to lodge an additional 2 adults would be represented by `occupancy=2-9,4&occupancy=2`
'
style: form
explode: true
schema:
type: array
items:
type: string
- name: rate_option
in: query
description: 'Request specific rate options for each property. Send multiple instances of this parameter to request multiple rate options.
Note: Optional parameter for use with hard change requests.
Accepted values:
* `member` - Return member rates for each property. This feature must be enabled and requires a user to be logged in to request these rates.
* `net_rates` - Return net rates for each property. This feature must be enabled to request these rates.
* `cross_sell` - Identify if the traffic is coming from a cross sell booking. Where the traveler has booked another service (flight, car, activities...) before hotel.
'
style: form
explode: true
schema:
type: array
items:
type: string
enum:
- member
- net_rates
- cross_sell
example:
- member
- net_rates
- name: sales_channel
in: query
description: 'Provide the sales channel if you wish to override the sales_channel provided in the previous call. EPS dynamically provides the best content for optimal conversion on each sales channel.
Note: Must specify this value for hard change requests.
* `website` - Standard website accessed from the customer''s computer
* `agent_tool` - Your own agent tool used by your call center or retail store agent
* `mobile_app` - An application installed on a phone or tablet device
* `mobile_web` - A web browser application on a phone or tablet device
* `meta` - Rates will be passed to and displayed on a 3rd party comparison website
* `cache` - Rates will be used to populate a local cache
'
schema:
type: string
- name: currency
in: query
description: 'Determines the returned currency type throughout the response
Note: This parameter is only valid for hard change requests and is ignored in all other cases
'
schema:
type: string
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/PropertyAvailability'
examples:
Availability:
value:
- property_id: 19248
rooms:
- id: 123abc
room_name: Fancy Queen Room
rates:
- id: 333abc
status: available
available_rooms: 12
refundable: true
member_deal_available: true
sale_scenario:
package: false
member: false
corporate: false
distribution: false
mobile_promotion: false
merchant_of_record: expedia
amenities:
'1234':
id: 1234
name: Free Wireless Internet
links:
payment_options:
method: GET
href: /v3/properties/19248/payment-options?token=MY5S3j36cOcL
bed_groups:
'12345':
links:
price_check:
method: GET
href: /v3/properties/19248/rooms/abc123/rates/abc123?token=MY5S3j36cOcL
expires: '2019-03-05T07:23:14.000Z'
id: '12345'
description: 1 Queen Bed
configuration:
- type: Bed
size: Queen
quantity: 1
cancel_penalties:
- currency: USD
start: '2018-02-12T11:59:00.000-08:00'
end: '2018-02-12T11:59:00.000-08:00'
amount: '10.00'
nights: 1
percent: 30%
occupancy_pricing:
'2':
nightly:
- - type: base_rate
value: '309.00'
currency: CAD
- type: tax_and_service_fee
value: '37.00'
currency: CAD
- - type: base_rate
value: '309.00'
currency: CAD
- type: tax_and_service_fee
value: '37.00'
currency: CAD
stay:
- type: extra_person_fee
value: '10.00'
currency: CAD
totals:
inclusive:
billable_currency:
value: '702.00'
currency: CAD
request_currency:
value: '530.97'
currency: USD
exclusive:
billable_currency:
value: '628.00'
currency: CAD
request_currency:
value: '475.00'
currency: USD
inclusive_strikethrough:
billable_currency:
value: '726.63'
currency: CAD
request_currency:
value: '549.60'
currency: USD
strikethrough:
billable_currency:
value: '650.00'
currency: CAD
request_currency:
value: '491.64'
currency: USD
marketing_fee:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '11.34'
currency: USD
gross_profit:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '11.34'
currency: USD
minimum_selling_price:
billable_currency:
value: '702.00'
currency: CAD
request_currency:
value: '530.97'
currency: USD
property_fees:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '11.34'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.78'
currency: USD
resort_fee:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.78'
currency: USD
mandatory_tax:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.78'
currency: USD
1-7,10:
nightly:
- - type: base_rate
value: '309.00'
currency: CAD
- type: tax_and_service_fee
value: '37.00'
currency: CAD
- - type: base_rate
value: '309.00'
currency: CAD
- type: tax_and_service_fee
value: '37.00'
currency: CAD
stay:
- type: extra_person_fee
value: '10.00'
currency: CAD
totals:
inclusive:
billable_currency:
value: '702.00'
currency: CAD
request_currency:
value: '530.97'
currency: USD
exclusive:
billable_currency:
value: '628.00'
currency: CAD
request_currency:
value: '475.00'
currency: USD
inclusive_strikethrough:
billable_currency:
value: '726.63'
currency: CAD
request_currency:
value: '549.60'
currency: USD
strikethrough:
billable_currency:
value: '650.00'
currency: CAD
request_currency:
value: '491.64'
currency: USD
marketing_fee:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '11.34'
currency: USD
gross_profit:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '11.34'
currency: USD
minimum_selling_price:
billable_currency:
value: '702.00'
currency: CAD
request_currency:
value: '530.97'
currency: USD
property_fees:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '11.34'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.78'
currency: USD
resort_fee:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.78'
currency: USD
mandatory_tax:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.78'
currency: USD
promotions:
value_adds:
123abc:
id: 123abc
description: 10 USD credit on activities and sports for your stay.
category: entertainment
offer_type: credit
frequency: per_stay
person_count: 1
deal:
id: 999abc
description: Book early and save 15%
card_on_file_limit:
value: '500.00'
currency: USD
refundable_damage_deposit:
value: '500.00'
currency: USD
deposits:
- value: '70.00'
due: '2025-12-21'
currency: USD
links:
additional_rates:
method: GET
href: /v3/properties/12345/availability?token=MY5S3j36cOcL
score: 10052
No availability:
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: checkin.invalid_date_format
message: Invalid checkin format. It must be formatted in ISO 8601 (YYYY-mm-dd) http://www.iso.org/iso/catalogue_detail?csnumber=40874.
fields:
- name: checkin
type: querystring
value: 2019-01-1
- type: checkout.invalid_length_of_stay_too_long_vrbo
message: 'Invalid date range. Checkin and checkout dates cannot differ by more than 365 days.
'
fields:
- name: checkin
type: querystring
value: '2024-09-21'
- name: checkout
type: querystring
value: '2025-10-21'
- type: number_of_occupancies.invalid_above_maximum
message: Number of occupancies must be less than 9.
fields:
- name: occupancy
type: querystring
value: 9
- type: filter.mismatch
message: Existing booking is expedia_collect, this cannot be changed.
fields:
- name: filter
type: querystring
value: property_collect
'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
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: service_unavailable
message: This service is currently unavailable.
security:
- rapidAuth: []
/properties/{property_id}/rooms/{room_id}/rates/{rate_id}:
get:
tags:
- Shopping
summary: Expedia Group Price-Check
description: 'Confirms the price returned by the Property Availability response. Use this API to verify a previously-selected rate is still valid before booking. If the price is matched, the response returns a link to request a booking. If the price has changed, the response returns new price details and a booking link for the new price. If the rate is no longer available, the response will return a new Property Availability request link to search again for different rates. In the event of a price change, go back to Property Availability and book the property at the new price or return to additional rates for the property.
'
operationId: priceCheck
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.
'
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: "Price check calls have a test header that can be used to return set responses with the following keywords:\n * `available`\n * `price_changed`\n * `sold_out`\n * `service_unavailable`\n * `unknown_internal_error`\n"
schema:
type: string
enum:
- available
- price_changed
- sold_out
- service_unavailable
- unknown_internal_error
- name: property_id
in: path
description: 'Expedia Property ID.
'
required: true
schema:
type: string
example: 19248
- name: room_id
in: path
description: 'Room ID of a property.
'
required: true
schema:
type: string
example: 123abc
- name: rate_id
in: path
description: 'Rate ID of a room.
'
required: true
schema:
type: string
example: 123abc
- name: token
in: query
description: A hashed collection of query parameters. Used to maintain state across calls. This token is provided as part of the price check link from the shop response.
required: true
schema:
type: string
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/RoomPriceCheck'
examples:
Available Example:
value:
status: available
occupancy_pricing:
'2':
nightly:
- - type: base_rate
value: '309.00'
currency: CAD
- type: tax_and_service_fee
value: '37.00'
currency: CAD
totals:
inclusive:
billable_currency:
value: '346.00'
currency: CAD
request_currency:
value: '261.00'
currency: USD
exclusive:
billable_currency:
value: '309.00'
currency: CAD
request_currency:
value: '230.00'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.00'
currency: USD
card_on_file_limit:
value: '500.00'
currency: USD
refundable_damage_deposit:
value: '500.00'
currency: USD
deposits:
- value: '70.00'
due: '2025-12-21'
currency: USD
links:
book:
method: POST
href: /v3/itineraries?token=MY5S3j36cOcL
expires: '2019-03-05T07:23:14.000Z'
Available Example With Trader Information:
value:
status: available
occupancy_pricing:
'2':
nightly:
- - type: base_rate
value: '309.00'
currency: CAD
- type: tax_and_service_fee
value: '37.00'
currency: CAD
totals:
inclusive:
billable_currency:
value: '346.00'
currency: CAD
request_currency:
value: '261.00'
currency: USD
exclusive:
billable_currency:
value: '309.00'
currency: CAD
request_currency:
value: '230.00'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.00'
currency: USD
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
links:
book:
method: POST
href: /v3/itineraries?token=MY5S3j36cOcL
expires: '2024-03-05T07:23:14.000Z'
Room Change Example:
value:
status: available
occupancy_pricing:
'2':
nightly:
- - type: base_rate
value: '309.00'
currency: CAD
- type: tax_and_service_fee
value: '37.00'
currency: CAD
totals:
inclusive:
billable_currency:
value: '346.00'
currency: CAD
request_currency:
value: '261.00'
currency: USD
exclusive:
billable_currency:
value: '309.00'
currency: CAD
request_currency:
value: '230.00'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '5.00'
currency: CAD
request_currency:
value: '3.00'
currency: USD
card_on_file_limit:
value: '500.00'
currency: USD
refundable_damage_deposit:
value: '500.00'
currency: USD
deposits:
- value: '70.00'
due: '2025-12-21'
currency: USD
amount_owed:
billable_currency:
value: '132.56'
currency: CAD
request_currency:
value: '100.00'
currency: USD
penalty:
billable_currency:
value: '26.51'
currency: CAD
request_currency:
value: '20.00'
currency: USD
links:
commit:
method: PUT
href: /v3/itineraries/8999989898988/rooms/d08572fc-82d2-4d5d-ad30-60f5be7fb53e/pricing?token=MY5S3j36cOcL
expires: '2019-03-05T07:23:14.000Z'
Price Changed Example:
value:
status: price_changed
occupancy_pricing:
'1234':
nightly:
type: base_rate
value: '90.00'
currency: USD
stay:
type: base_rate
value: '90.00'
currency: USD
totals:
inclusive:
billable_currency:
value: '215.00'
currency: USD
request_currency:
value: '215.00'
currency: USD
exclusive:
billable_currency:
value: '215.00'
currency: USD
request_currency:
value: '215.00'
currency: USD
strikethrough:
billable_currency:
value: '215.00'
currency: USD
request_currency:
value: '215.00'
currency: USD
marketing_fee:
billable_currency:
value: '215.00'
currency: USD
request_currency:
value: '215.00'
currency: USD
gross_profit:
billable_currency:
value: '15.00'
currency: CAD
request_currency:
value: '10.00'
currency: USD
minimum_selling_price:
billable_currency:
value: '215.00'
currency: USD
request_currency:
value: '215.00'
currency: USD
property_fees:
billable_currency:
value: '8.50'
currency: EUR
request_currency:
value: '10.00'
currency: USD
fees:
mandatory_fee:
billable_currency:
value: '8.50'
currency: EUR
request_currency:
value: '10.00'
currency: USD
links:
additional_rates:
method: GET
href: /v3/properties/1234/availability?token=REhZAQsABAMGQggMV1pFAV1YVA5cZhBYEgNKH1RGEVEQUAoOBwlVVBlVCEkFUxVZWgZAFAVbABgMC0RXRx=
book:
method: POST
href: /v3/itineraries?token=MY5S3j36cOcLfLBZjPYQ1abhfc8CqmjmFVzkk7euvWaunE57LLeDgaxm516m
expires: '2019-03-05T07:23:14.000Z'
Sold Out Example:
value:
status: sold_out
links:
shop:
method: GET
href: /v3/properties/1234/availability?token=REhZAQsABAMGQggMV1pFAV1YVA5cZhBYEgNKH1RGEVEQUAoOBwlVVBlVCEkFUxVZWgZAFAVbABgMC0RXRx=
'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.
'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: []
/properties/{property_id}/payment-options:
get:
tags:
- Shopping
summary: Expedia Group Get Accepted Payment Types - EPS MOR Only
description: 'Returns the accepted payment options. Use this API to power your checkout page and display valid forms of payment, ensuring a smooth booking.
'
operationId: getPaymentOptions
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.
'
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: property_id
in: path
description: 'Expedia Property ID.
'
required: true
schema:
type: string
example: 19248
- 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
- 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
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/PaymentOption'
example:
affiliate_collect:
name: Affiliate Collect
credit_card:
name: Credit Card
card_options:
- name: AmericanExpress
- name: MasterCard
processing_country: US
merchant:
name: TRAVEL RESERVATION
'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.
'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: payment_options.not_found
message: The requested property returned no payment options that are enabled for this point of sale.
fields:
- name: property_id
type: path
value: '1337'
- name: token.currency
type: querystring
value: USD
- name: token.country_code
type: querystring
value: US
'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
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
type: service_unavailable
message: This service is currently unavailable.
security:
- rapidAuth: []
/calendars/availability:
get:
tags:
- Shopping
summary: Expedia Group Get a calendar of availability dates for properties. This is currently a Vrbo property only feature.
description: "Returns availability information for the specified properties (maximum of 25 properties per request).\n The response includes per day information about the property's availability, information about if check-in or check-out is available for the day,\n and information regarding the stay constraints.\n"
operationId: getCalendarAvailability
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: 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: 'Shop calls have a test header that can be used to return set responses with the following keywords:
* `standard`
* `service_unavailable`
* `unknown_internal_error`
'
schema:
type: string
enum:
- standard
- service_unavailable
- unknown_internal_error
- name: property_id
in: query
description: 'The ID of the property you want to search for. You can provide 1 to 250 property_id parameters.
'
required: true
style: form
explode: true
schema:
type: array
items:
type: string
example: property_id=1234&property_id=5678
- name: start_date
in: query
description: 'The first day of availability information to be returned, in ISO 8601 format (YYYY-MM-DD), up to 500 days in the future from the current date.
'
required: true
schema:
type: string
format: date
example: '2023-01-15'
- name: end_date
in: query
description: 'The last day of availability information to be returned, in ISO 8601 format (YYYY-MM-DD). This must be 365 days or less from the start_date.
'
required: true
schema:
type: string
format: date
example: '2023-12-17'
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/PropertyCalendarAvailability'
examples:
Single Property Availability:
value:
- property_id: '1234'
days:
- date: '2022-09-20'
available: true
checkin: CHECKIN_VALID
checkout: CHECKOUT_VALID
stay_constraints:
min_stay: 1
max_stay: 14
- date: '2022-09-21'
available: true
checkin: CHECKIN_VALID
checkout: CHECKOUT_VALID
stay_constraints:
min_stay: 1
max_stay: 14
Multi Property Availability:
value:
- property_id: '1234'
days:
- date: '2022-09-20'
available: true
checkin: CHECKIN_VALID
checkout: CHECKOUT_VALID
stay_constraints:
min_stay: 1
max_stay: 14
- property_id: '5678'
days:
- date: '2022-09-20'
available: true
checkin: CHECKIN_VALID
checkout: CHECKOUT_VALID
stay_constraints:
min_stay: 1
max_stay: 5
No Results:
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:
example:
type: invalid_input
message: An invalid request was sent in, please check the nested errors for details.
errors:
- type: checkin.invalid_date_format
message: Invalid checkin format. It must be formatted in ISO 8601 (YYYY-mm-dd) http://www.iso.org/iso/catalogue_detail?csnumber=40874.
fields:
- name: checkin
type: querystring
value: 2019-01-1
- type: number_of_occupancies.invalid_above_maximum
message: Number of occupancies must be less than 9.
fields:
- name: occupancy
type: querystring
value: '9'
'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:
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:
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:
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:
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:
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:
example:
type: service_unavailable
message: This service is currently unavailable.
security:
- rapidAuth: []
components:
schemas:
Deal:
type: object
properties:
id:
type: string
description: Unique identifier for the deal.
description:
type: string
description: The description for the deal.
description: The deal that applies to this rate.
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.
BedGroupConfiguration:
type: object
properties:
type:
type: string
description: The type of this bed configuration in the room.
size:
type: string
description: The size of this bed configuration in the room.
quantity:
type: number
description: The number of this bed configuration in the room.
description: An individual bed configuration.
StayConstraints:
type: object
properties:
min_stay:
type: integer
description: The minimum number of days for a stay.
format: int32
example: 1
max_stay:
type: integer
description: The maximum number of days for a stay.
format: int32
example: 14
PaymentOption:
type: object
properties:
affiliate_collect:
$ref: '#/components/schemas/AffiliateCollect'
credit_card:
$ref: '#/components/schemas/CreditCard'
description: The payment option response.
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.
'
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.
RateLinks:
type: object
properties:
payment_options:
$ref: '#/components/schemas/Link'
additionalProperties:
$ref: '#/components/schemas/Link'
description: A map of links, including a link to request payment options.
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.
MerchantOfRecord:
type: string
description: '* `expedia` - Payment is taken by Expedia.
* `property` - Payment is taken by the property.
'
enum:
- expedia
- property
TraderName:
type: string
description: The trader name.
example: Expedia
Status:
type: string
description: Indicates the status of the rate. If the rate is still available then available will be returned. If the rate is no longer available at that price then price_changed will be returned. If the rate is no longer available at all then sold_out will be returned.
enum:
- available
- price_changed
- sold_out
PropertyAvailabilityLinks:
type: object
properties:
additional_rates:
$ref: '#/components/schemas/Link'
recommendations:
$ref: '#/components/schemas/Link'
additionalProperties:
$ref: '#/components/schemas/Link'
description: A map of links, including links to request additional rates. Note that the recommendations feature has been retired and will return an error if the link is followed.
example:
additional_rates:
method: GET
href: /v3/properties/12345/availability?token=MY5S3j36cOcL
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.
Property:
type: object
properties:
property_id:
type: string
description: Expedia property ID.
status:
type: string
description: Helps determine which type of property response is returned.
enum:
- available
- partially_unavailable
score:
type: number
description: A score to sort properties where the higher the value the better. It can be used to:
* Sort the properties on the response
* Sort properties across multiple responses in parallel searches for large regions
discriminator:
propertyName: status
mapping:
available: '#/components/schemas/PropertyAvailability'
partially_unavailable: '#/components/schemas/PropertyUnavailability'
CheckOutValidity:
type: string
description: 'Enumeration indicating the capability of check-out on the date.
`CHECKOUT_VALID`: The associated date is valid for check out.
`CHECKOUT_INVALID`: The checkout validity value is invalid or unknown.
`CHECKOUT_INVALID_DUE_TO_NON_CHANGEOVER_DAY_OF_WEEK`: The associated date is not valid for check out because it falls on a day of the week that check out is prohibited.
`CHECKOUT_INVALID_DUE_TO_CHANGEOVER_EXCLUSION`: The associated date is not valid for check out because check out was prohibited on that specific date.
'
example: CHECKOUT_VALID
OfferType:
type: string
description: The type of offer this value add promotion is.
enum:
- buy_one_get_one_free
- credit
- discount
- free
- voucher
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.
RoomPriceCheckLinks:
type: object
properties:
book:
$ref: '#/components/schemas/Link'
commit:
$ref: '#/components/schemas/Link'
payment_session:
$ref: '#/components/schemas/Link'
additional_rates:
$ref: '#/components/schemas/Link'
additionalProperties:
$ref: '#/components/schemas/Link'
description: 'A map of links, including links to continue booking this rate or to shop for additional rates.
If this rate is still available for booking then a book link will be present if PSD2 is not a requirement for you or a payment_session link will be present if PSD2 is a requirement for you.
'
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
CreditCard:
type: object
properties:
card_options:
type: array
items:
$ref: '#/components/schemas/CardOption'
merchant:
$ref: '#/components/schemas/CreditCardMerchant'
name:
type: string
description: Display name of payment option.
CardOption:
type: object
properties:
name:
type: string
description: Brand name for the accepted credit or debit card. Use this value to determine which cards to display on your checkout page.
processing_country:
type: string
description: The country in which the payment will be processed.
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.
'
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.
AffiliateCollect:
type: object
properties:
name:
type: string
description: Display name of payment option.
description: This option will be returned if a booking can be made using Expedia Affiliate Collect.
SaleScenario:
type: object
properties:
package:
type: boolean
description: 'If true, this rate has been provided to be bundled with car, air, etc. and displayed as a total package price.
If shopping in a cross-sell scenario and using the cross-sell rate option, this indicates that the rate is a package rate available to be sold as an add-on to an existing itinerary.
'
member:
type: boolean
description: 'If true, this rate has a "Member Only Deal" discount applied to the rate.
Partners must be enabled to receive "Member Only Deals". If interested, partners should speak to their account representatives.
This parameter can be used to merchandise if a "Member Only Deal" has been applied, which will help drive loyalty. In addition, it can be used by OTA''s to create an opaque, but public shopping experience.
This value will always be false for requests where the sales_environment is equal to "hotel_package".
'
corporate:
type: boolean
description: 'If true, this rate is a corporate negotiated rate. These rates provide additional value adds (e.g. free breakfast, free wifi, discount) and same-day cancellation.
'
distribution:
type: boolean
description: 'If true, this rate is an EPS Optimized Distribution rate. These rates are procured exclusively for EPS distribution and may contain benefits such as larger marketing fee, less restrictive cancellation policies, additional value adds, or unique availability.
'
mobile_promotion:
type: boolean
description: 'If true, this rate has an associated mobile promotion which can be advertised as a special mobile only deal.
This will only be present when `include=sale_scenario.mobile_promotion` is passed as a request parameter.
'
description: Provides the special scenarios that need to be taken into account when using this rate.
BedGroupAvailabilityLinks:
type: object
properties:
price_check:
$ref: '#/components/schemas/Link'
additionalProperties:
$ref: '#/components/schemas/Link'
description: A map of links, including links to confirm pricing and availability for the selected rate.
Deposit:
type: object
properties:
value:
type: string
description: The amount that must be paid as a deposit.
due:
type: string
description: The due date in ISO 8601 format.
currency:
type: string
description: The currency for the deposit amount.
description: A deposit policy associated with the rate.
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
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.
PropertyCalendarAvailability:
type: object
properties:
property_id:
type: string
description: Expedia property ID.
example: '123456'
days:
type: array
items:
$ref: '#/components/schemas/Day'
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.
Rate:
type: object
properties:
id:
type: string
description: Unique Identifier for a rate.
status:
$ref: '#/components/schemas/Status'
available_rooms:
type: number
description: 'The number of bookable rooms remaining with this rate in EPS inventory. Use this value to create rules for urgency messaging to alert users to low availability on busy travel dates or at popular properties.
If the value returns as 2147483647 (max int value), the actual value could not be determined. Ensure your urgency messaging ignores such instances when returned.'
refundable:
type: boolean
description: Indicates if the rate is fully refundable at the time of booking. Cancel penalties may still apply. Please refer to the cancel penalties section for reference.
member_deal_available:
type: boolean
description: Indicates if a "Member Only Deal" is available for this rate.
sale_scenario:
$ref: '#/components/schemas/SaleScenario'
merchant_of_record:
$ref: '#/components/schemas/MerchantOfRecord'
amenities:
type: object
additionalProperties:
$ref: '#/components/schemas/Amenity'
description: Room amenities.
links:
$ref: '#/components/schemas/RateLinks'
bed_groups:
type: object
additionalProperties:
$ref: '#/components/schemas/BedGroupAvailability'
description: A map of the room's bed groups.
cancel_penalties:
type: array
description: Array of `cancel_penalty` objects containing cancel penalty information.
items:
$ref: '#/components/schemas/CancelPenalty'
nonrefundable_date_ranges:
type: array
description: 'An array of stay date ranges within this check-in / check-out range that are not refundable. Stay dates
within these ranges provide no refund on cancellation, regardless of cancel penalty windows. The stay dates
are determined by the would be check-in of that night. With a check-in date of 2023-09-01, and a check-out
date of 2023-09-06, this would be a 5 night stay. A `nonrefundable_date_range` with start: 2023-09-02 and
end: 2023-09-03 would mean 2 of the nights are nonrefundable. The 1st night is refundable, the 2nd and 3rd
nights are nonrefundable, and the 4th and 5th nights are refundable, subject to `cancel_penalties`
restrictions.
'
items:
$ref: '#/components/schemas/NonrefundableDateRange'
marketing_fee_incentives:
type: array
description: 'An array of stay date ranges within this check-in / check-out range that have an incentive applied. The stay
dates are determined by the would be check-in of that night. With a check-in date of 2023-09-01, and a
check-out date of 2023-09-06, this would be a 5 night stay. A `marketing_fee_incentive` with start:
2023-09-02 and end: 2023-09-03 would mean 2 of the nights have an incentive applied. The 1st night is not
part of the incentive, the 2nd and 3rd nights are part of the incentive, and the 4th and 5th nights are not
part of the incentive.
'
items:
$ref: '#/components/schemas/MarketingFeeIncentive'
occupancy_pricing:
type: object
additionalProperties:
$ref: '#/components/schemas/PricingInformation'
description: A map of room information by occupancy.
promotions:
$ref: '#/components/schemas/Promotions'
card_on_file_limit:
$ref: '#/components/schemas/Amount'
refundable_damage_deposit:
$ref: '#/components/schemas/Amount'
deposits:
type: array
description: Array of deposits for the rate.
items:
$ref: '#/components/schemas/Deposit'
description: A rate.
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%
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.
StatusPriceCheck:
type: string
description: Indicates the status of the rate. If the rate is still available then available will be returned. If the rate is no longer available at that price then price_changed will be returned. If the rate is no longer available at all then sold_out will be returned.
enum:
- available
- price_changed
- sold_out
RoomPriceCheck:
type: object
properties:
status:
$ref: '#/components/schemas/StatusPriceCheck'
occupancy_pricing:
type: object
additionalProperties:
$ref: '#/components/schemas/PricingInformation'
description: A map of room information by occupancy.
links:
$ref: '#/components/schemas/RoomPriceCheckLinks'
card_on_file_limit:
$ref: '#/components/schemas/Amount'
refundable_damage_deposit:
$ref: '#/components/schemas/Amount'
deposits:
type: array
description: Array of deposits.
items:
$ref: '#/components/schemas/Deposit'
refund:
$ref: '#/components/schemas/Charge'
amount_owed:
$ref: '#/components/schemas/Charge'
penalty:
$ref: '#/components/schemas/Charge'
trader_information:
$ref: '#/components/schemas/TraderInformation'
description: The price check response.
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.
Promotions:
type: object
properties:
value_adds:
type: object
additionalProperties:
$ref: '#/components/schemas/ValueAdd'
description: A collection of value adds that apply to this rate.
deal:
$ref: '#/components/schemas/Deal'
description: Available promotions that apply to this rate.
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.
RoomAvailability:
type: object
properties:
id:
type: string
description: Unique Identifier for a room type.
room_name:
type: string
description: Name of the room type.
rates:
type: array
description: Array of objects containing rate information.
items:
$ref: '#/components/schemas/Rate'
description: The room information.
Day:
type: object
properties:
date:
type: string
description: Date associated to the provided information.
format: date
available:
type: boolean
description: True if the property is available on the date.
checkin:
$ref: '#/components/schemas/CheckInValidity'
checkout:
$ref: '#/components/schemas/CheckOutValidity'
stay_constraints:
$ref: '#/components/schemas/StayConstraints'
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.
Amenity:
type: object
properties:
id:
type: string
description: The amenity definition ID for this amenity.
name:
type: string
description: Amenity name.
value:
type: string
description: Amenity value.
categories:
type: array
description: 'This is an optional field and will be present only if the amenity falls into one or more of these amenity categories.
See the Amenity Categories section of the
[Content Reference Lists](https://developers.expediagroup.com/docs/rapid/lodging/content/content-reference-lists)
for a list of values.
'
items:
type: string
description: An individual amenity.
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.
MarketingFeeIncentive:
type: object
properties:
source:
type: string
description: 'The source of the incentive. This can be used to differentiate between incentives in the case that more than
one incentive applies to a particular rate.
'
start:
type: string
description: The first stay date with the incentive applied in ISO 8601 format.
end:
type: string
description: The last stay date with the incentive applied in ISO 8601 format.
description: An object representing one incentive source and the stay dates relevant to that particular incentive.
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
CheckInValidity:
type: string
description: 'Enumeration indicating the capability of check-in on the date.
`CHECKIN_VALID`: The associated date is valid for check in.
`CHECKIN_INVALID`: Generic or Unknown reason for being not being a valid day for check in.
`CHECKIN_INVALID_DUE_TO_BEING_IN_PAST`: The associated date is not valid for check in due to being in the past.
`CHECKIN_INVALID_DUE_TO_MIN_PRIOR_NOTIFICATION`: The associated date is not valid for check in because checking in on this date would not meet the owner''s minimum prior notification requirements.
`CHECKIN_INVALID_DUE_TO_MAX_FUTURE_BOOKING`: The associated date is not valid for check in because it is too far in the future.
`CHECKIN_INVALID_DUE_TO_NOT_AVAILABLE`: The associated date is not valid for check in because it is not available (ie. the date is already reserved).
`CHECKIN_INVALID_DUE_TO_NON_CHANGEOVER_DAY_OF_WEEK`: The associated date is not valid for check in because it falls on a day of the week that check in is prohibited.
`CHECKIN_INVALID_DUE_TO_CHANGEOVER_EXCLUSION`: The associated date is not valid for check in because check in was prohibited on that specific date.
`CHECKIN_INVALID_DUE_TO_MIN_STAY_NOT_ACHIEVABLE`: The associated date is not valid for check in because checking in on this date does not satisfy the minimum stay duration.
`CHECKIN_INVALID_DUE_TO_NO_VALID_CHECKOUT_WITHIN_CONSTRAINTS`: The associated date is not valid for check in because there is not an associated check out date that would allow the stay to satisfy stay constraints.
'
example: CHECKIN_VALID
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.
PropertyAvailability:
allOf:
- $ref: '#/components/schemas/Property'
- type: object
properties:
rooms:
type: array
description: Array of objects containing room information.
items:
$ref: '#/components/schemas/RoomAvailability'
links:
$ref: '#/components/schemas/PropertyAvailabilityLinks'
description: The rooms and rates for a property.
BedGroupAvailability:
type: object
properties:
links:
$ref: '#/components/schemas/BedGroupAvailabilityLinks'
id:
type: string
description: Unique identifier for a bed group.
description:
type: string
description: This is a display ready description of a bed configuration for this room.
configuration:
type: array
description: The bed configuration for a given room. This array can be empty for the related bed group.
items:
$ref: '#/components/schemas/BedGroupConfiguration'
CreditCardMerchant:
type: object
properties:
name:
type: string
description: Name of the merchant to use during 3rd party authorization for PSD2.
example:
name: TRAVEL RESERVATION
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