Retrieves information about a single property's reservations. Information is returned at the property level, not the unit level.
Retrieve (filter) reservations by checkout date; they are returned in chronological order (sorted by creationDateTime, earliest to latest).
Retrieve reservations by last updated date; this is helpful in identifying modified reservations (by comparing a reservation's creationDataTime and lastUpdatedDateTime).
Retrieve specific reservations by specifying the reservationIds filter.
Only reservations for properties that were onboarded to Expedia sites are retrieved. Retrieving reservations for Vrbo properties is not supported at this time.
Up to 10,000 reservations can be retrieved using this query.
Note: The reservations query is nested under the property query, which provides access to other capabilities, such as property status and promotions. However, you must be granted access to each capability before you can code to it. Contact your Technical Relationship Manager if you are interested in more than reservations.
The GraphQL explorer is provided below. Use this interactive explorer to run the sample query, which enables you to retrieve the following:
All reservations on the property that have checkout dates within the specified window in chronological order (sorted by creationDateTime, earliest to latest)
The rateIds type provides IDs to use when mapping the rate plan IDs. When idSource is set to SUPPLIER, the id field returns the same value as returned by the existing booking APIs. (For Hotel Collect properties, the A- prefix is no longer added to the source value and the A suffix is no longer appended to the rate ID as was done by the booking APIs.)
The specified checkout window ({ from: "2021-08-05", to: "2021-08-05" }) returns data for an Expedia Collect reservation. To see data for a Hotel Collect reservation, change the checkOutDate argument to { from: "2021-08-06", to: "2021-08-06" }.
Note that you can also filter retrieved reservations by last updated date or reservation ID, though this is not shown in this example.
The GraphQL explorer will help you get comfortable with the GraphQL:
For each query, a test property ID is passed into the explorer; its test data is returned.
Click Run Query to execute the query in the explorer on the page. You can modify the query to retrieve the desired fields, and the explorer provides a list of fields when you start typing.
Click API Explorer to launch the full explorer in another tab/window, which provides syntax highlighting, schema introspection, real-time error highlighting, and auto-completion, among other things.
The traveler's Expedia Group VIP Access loyalty tier. These reservations often
include value add promotions (VAPs), therefore it is important to associate
this field and reservation:valueAddedPromotions in your systems so that
end-users can properly identify loyal travelers and loyalty perks that the
traveler is expecting. Values include MEMBER, VIP, PREMIUMVIP, and null. You
must include this field to complete certification.
Details about the frequent traveler reward program. This field identifies if
the traveler is a member of the supplier's loyalty program to ensure the
supplier is able to greet the guest accordingly and award loyalty points as needed.
The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.
Reason why the reservation cannot be reconciled. Values include the following:
GUEST_REQUESTED_CANCEL - Traveler cancelled the reservation
NO_SHOW - Traveler was a no-show
MODIFY_DATES_AMOUNTS - There was a difference in the booking price when the
lodging partner charged the traveler (for example, because an extra night was
added at the time of stay)
Representation of a physical property, including its units, reservations, and promotions.
Field
Description
reservations
Not nullable.
List of the property's reservations that match the specified arguments:
filter (type: ReservationFilterInput), which enables you to refine the
reservations to retrieve. If this argument is not specified, the query returns
all reservations for the property.
pageSize (type: Int!), which is required and specifies the maximum number
of reservations on each page (up to 25) returned by the response. For example,
if there are 40 reservations on a property, you can retrieve two pages if this
argument is set to 25 (page 1 includes 25 reservations, page 2 includes 15 reservations).
after (type: String), which is the cursor from the previous query response
that marked the end of the previous page of results.
Reason why the reservation can be reconciled. Values include the following:
GUEST_REQUESTED_CANCEL - Traveler cancelled the reservation
NO_SHOW - Traveler was a no-show
MODIFY_DATES_AMOUNTS - There was a difference in the booking price when the
lodging partner charged the traveler (for example, because an extra night was
added at the time of stay)
Timestamp of when the reservation was created (format: yyyy-mm-ddThh:mm:ssTZD,
where TZD is a time zone designator in the form +/-hh:mm). Compare this value
to that of lastUpdatedDateTime to determine if a reservation has been modified.
ID of message thread (conversation) associated with the reservation. This
requires implementation and certification of the messaging capability. If no
message threads exist for a reservation, null is returned.
ID of the rate/rate plan and the source of the ID. In the response, when
idSource is set to SUPPLIER, the id field returns the same value as
returned by the existing booking APIs. However, for Hotel Collect properties,
the A- prefix is no longer added to the source value and the A suffix is no
longer appended to the rate ID as was done by the booking APIs.
Source of the reservation. Refer to Booking sources
for the list of possible values (though \"A-\" is not included in Hotel
Collect sources returned by this API).
Value add promotion(s) used to book the reservation, which are additional
benefits that travelers receive based on loyalty tier status, chosen property,
and room type or rate plan they book. If a value add promotion was not used,
an empty array is returned. We strongly recommend that you include this field
in your implementation to ensure traveler-promised perks can be properly
fulfilled by suppliers.
Date and time when the reservation was last updated. Compare this value to
that of creationDateTime to determine if a reservation has been
modified.Example:
The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
Nightly rate with no additional taxes, fees, or surcharges.
EXTRA_GUEST_FEES
Fees that are included in the price that guests see when booking. They are
paid in advance for Expedia Collect reservations or upon arrival for Hotel
Collect reservations.
SERVICE_FEES
Fees that only apply to guests who make use of specific facilities or
services, such as resort fees, parking fees, or fees for rollaway beds.
RECONCILED_AMOUNT
Updated rate, which must be the commissionable value for the stay date.
Amounts for dates included in the original reservation cannot be modified to a
value of three times more than the commissionable rate applicable to that date.
SupplierLoyaltyPlanInfo
Object
Details about the frequent traveler reward program. This field identifies if the
traveler is a member of the supplier's loyalty program to ensure the supplier is
able to greet the guest accordingly and award loyalty points as needed.