Requests availability of hotel properties by specific criteria that may include: dates, date ranges, price range, room types, regular and qualifying rates, and/or services and amenities. The availability message can be used to get an initial availability or to get availability for the purpose of modifying an existing reservation.
<?xml version="1.0" encoding="utf-8"?>
<OTA_HotelAvailRQ EchoToken="Example123" PrimaryLangID="eng" Target="Production" TimeStamp="2018-07-29T07:38:54.729Z" Version="1.0">
<POS>
<Source>
<RequestorID ID="APIKEY" MessagePassword="APIPASSWORD"/>
</Source>
</POS>
<AvailRequestSegments>
<AvailRequestSegment>
<HotelSearchCriteria BestOnlyIndicator="false">
<Criterion ExactMatch="false">
<HotelRef HotelCode="12345" />
<RatePlanCandidates>
<RatePlanCandidate RatePlanCode="1" />
</RatePlanCandidates>
<RoomStayCandidates>
<RoomStayCandidate RoomID="1" Quantity="1">
<GuestCounts IsPerRoom="true">
<GuestCount AgeQualifyingCode="10" Count="2" />
</GuestCounts>
</RoomStayCandidate>
</RoomStayCandidates>
<StayDateRange Start="2018-08-04" End="2018-08-05" />
<Award Rating="2" />
<Address>
<AddressLine/>
<StreetNmbr/>
<PostalCode/>
<CityName/>
<StateProv/>
<CountryName/>
</Address>
</Criterion>
</HotelSearchCriteria>
</AvailRequestSegment>
</AvailRequestSegments>
</OTA_HotelAvailRQ>
Element / @Attribute | Parent | Info | Values | Occurrence |
---|---|---|---|---|
AvailRequestSegments | OTA_HotelAvailRQ | A collection of AvailRequestSegment. Each segment includes a collection of criteria that requests a bookable entity, which may include designated rate plans, room types, amenities or services, and the request can be used for guest rooms or other inventory items for which availability is sought. Each segment would be presumed to have a unique date range for each request. | 1 | |
AvailRequestSegment | AvailRequestSegments | To accommodate the ability to perform multiple requests within one message, the availability request contains the repeating element, AvailRequestSegment. Each segment includes a collection of criteria that requests a bookable entity, which may include designated rate plans, room types, amenities or services, and the request can be used for guest rooms or other inventory items for which availability is sought. Each segment would be presumed to have a unique date range for each request. | 1..n | |
HotelSearchCriteria | AvailRequestSegment | HYotelsearch criteria. | 1 | |
@BestOnlyIndicator | HotelSearchCriteria | When true , return only the lowest room rate for hotels that are available. |
true false |
0..1 |
Criterion | HotelSearchCriteria | Child elements that identify a single search criterion by criteria type. Because many of the types include partial matches to string values such as partial addresses (street names without a number). A ExactMatch attribute indicates whether the match to the string value must be exact. | 1 | |
@ExactMatch | Criterion | Values of "true" or "false", indicating whether the string of the search value must be an exact match. | true false |
0..1 |
HotelRef | Criterion | Indicates the detail of hotel reference information. | 0..1 | |
@HotelCode | HotelRef | The ID of the hotel. | [integer] | 0..1 |
RatePlanCandidates | Criterion | Collection of requested rate plans. | 0..1 | |
RatePlanCandidate | RatePlanCandidates | Element used to identify available products and rates. | 1 | |
RatePlanCode | RatePlanCandidate | The ID of the rate. | [integer] | 1 |
RoomStayCandidates | Criterion | Collection of room stay candidates. | 0..1 | |
RoomStayCandidate | RoomStayCandidate | Element used to identify available room products. Used to identify available room products. | 1 | |
@RoomID | RoomStayCandidate | The ID of the room. | [integer] | 0..1 |
@Quantity | RoomStayCandidate | Defines the number of the item in question. Used for Numeric values, from 1 to 9999 inclusive. | [integer] | 1 |
GuestCounts | RoomStayCandidate | A collection of GuestCount by age group. | 1 | |
@IsPerRoom | GuestCounts | IsPerRoom means that the guests defined in the GuestCounts object apply to each room in the NumberOfRooms for the RoomStay. Value of false means that the guests defined in the GuestCounts object apply to all rooms combined in the NumberOfRooms for the RoomStay. |
true false |
1 |
GuestCount | GuestCounts | A recurring element that identifies the number of guests and ages of the guests. | 1..n | |
@AgeQualifyingCode | GuestCount | A code representing a business rule that determines the charges for a guest based upon age range. This attribute allows for an increase in rate by occupant class. | Refer to Code List Age Qualifying Code (AQC) | 1 |
@Count | GuestCount | The number of guests in one AgeQualifyingCode or Count. | [integer] | 1 |
StayDateRange | Criterion | Range of dates, or fixed set of dates for Availability Request. Date range can also be specified by using start dates and number of nights (minimum, maximum or fixed). Used to specify a time window range by either specifying an earliest and latest date for the start date and end date or by giving a date with a time period that can be applied before and/or after the start date. | 1 | |
@Start | StayDateRange | The starting value of the time span. | [yyyy-MM-dd] | 1 |
@End | StayDateRange | The ending value of the time span. | [yyyy-MM-dd] | 1 |
Award | Criterion | An element that identifies the hotel ratings. | 0..1 | |
@Rating | Award | The actual award or rating received by the hotel facility. | [integer] | 1 |
Address | Criterion | Uses any part of address information, such as street name, postal code, or country code. | 0..1 | |
@FormattedInd | Address | Specifies if the associated data is formatted or not. When true , then it is formatted; when false , then not formatted. |
true false |
1 |
AddressLine | Address | When the address is unformatted (FormattedInd="false") these lines will contain free form address details. When the address is formatted and street number and street name must be sent independently, the street number will be sent using StreetNmbr, and the street name will be sent in the first AddressLine occurrence. | [string] | 0..1 |
StreetNmbr | Address | May contain the street number and optionally the street name. | [string] | 0..1 |
PostalCode | Address | Post Office Code number. | [string] | 0..1 |
CityName | Address | City (e.g., Dublin), town, or postal station (i.e., a postal service territory, often used in a military address). | [string] | 0..1 |
StateProv | Address | State or Province name (e.g., Zuid-Holland). State, province, or region name or code needed to identify location. | [string] | 0..1 |
CountryName | Address | Country name (e.g., Ireland). The name or code of a country (e.g. as used in an address or to specify citizenship of a traveller). | [string] | 0..1 |
Returns information about hotel properties that meet the requested criteria, indicating whether the requested service, rate, room stay, etc. is available within the date(s) specified. The response message may include Warnings from business processing rules, or Errors if the request did not succeed.
<?xml version="1.0" encoding="utf-8"?>
<OTA_HotelAvailRS EchoToken="Example123" PrimaryLangID="eng" Target="Production" TimeStamp="2018-07-29T07:38:54.729Z" Version="1.0">
<Success />
<HotelStays>
<HotelStay>
<BasicPropertyInfo HotelCode="12345" HotelName="Hotel SmartPMS" CurrencyCode="EUR">
<Address FormattedInd="True">
<StreetNmbr>19</StreetNmbr>
<AddressLine>Orteliuslaan</AddressLine>
<PostalCode>3528 BA</PostalCode>
<CityName>Utrecht</CityName>
<StateProv>Utrecht</StateProv>
<CountryName>NL</CountryName>
<TPA_Extensions>
<StateID>2</StateID>
</TPA_Extensions>
</Address>
<Award Rating="2" />
<ContactNumbers>
<ContactNumber PhoneTechType="1" CountryAccessCode="31" AreaCityCode="30" PhoneNumber="7820590" />
</ContactNumbers>
<Policy CheckInTime="14:00:00" CheckOutTime="14:00:00" />
<Position Latitude="52.072292" Longitude="5.076971" />
</BasicPropertyInfo>
</HotelStay>
</HotelStays>
<RoomStays>
<RoomStay>
<TimeSpan Start="2018-08-04" End="2018-08-06" />
<RoomTypes>
<RoomType RoomID="1" RoomTypeCode="STD" Composite="False">
<RoomDescription>
<Text>Comfort Room</Text>
</RoomDescription>
<Occupancy AgeQualifyingCode="7" MaxOccupancy="1" />
<Occupancy AgeQualifyingCode="8" MaxOccupancy="2" />
<Occupancy AgeQualifyingCode="10" MaxOccupancy="3" />
</RoomType>
</RoomTypes>
<RatePlans>
<RatePlan RatePlanCode="1" RatePlanName="Standaard" AvailableQuantity="8">
<RatePlanDescription>
<Text />
</RatePlanDescription>
<MealsIncluded MealPlanIndicator="True" MealPlanCodes="3" />
<CancelPenalties>
<CancelPenalty CancelPolicyIndicator="True" NonRefundable="True">
<Deadline AbsoluteDeadline="02:00:00" />
<AmountPercent Percent="100" />
</CancelPenalty>
</CancelPenalties>
</RatePlan>
</RatePlans>
<RoomRates>
<RoomRate>
<Rates>
<Rate EffectiveDate="2018-08-04">
<Base AmountBeforeTax="20000" AmountAfterTax="20000" DecimalPlaces="2" CurrencyCode="EUR" />
</Rate>
<Rate EffectiveDate="2018-08-05">
<Base AmountBeforeTax="21000" AmountAfterTax="21000" DecimalPlaces="2" CurrencyCode="EUR" />
</Rate>
</Rates>
</RoomRate>
</RoomRates>
<GuestCounts>
<GuestCount AgeQualifyingCode="10" Count="2" />
</GuestCounts>
<Total AmountBeforeTax="41000" AmountAfterTax="41000" DecimalPlaces="2" CurrencyCode="EUR" />
</RoomStay>
<RoomStay>
<TimeSpan Start="2018-08-04" End="2018-08-06" />
<RoomTypes>
<RoomType RoomID="1" RoomTypeCode="STD" Composite="False">
<RoomDescription>
<Text>Comfort Room</Text>
</RoomDescription>
<Occupancy AgeQualifyingCode="7" MaxOccupancy="1" />
<Occupancy AgeQualifyingCode="8" MaxOccupancy="2" />
<Occupancy AgeQualifyingCode="10" MaxOccupancy="3" />
</RoomType>
</RoomTypes>
<RatePlans>
<RatePlan RatePlanCode="2" RatePlanName="Non refundable" AvailableQuantity="8">
<RatePlanDescription>
<Text />
</RatePlanDescription>
<MealsIncluded MealPlanIndicator="False" />
<CancelPenalties>
<CancelPenalty CancelPolicyIndicator="True" NonRefundable="True">
<Deadline AbsoluteDeadline="02:00:00" />
</CancelPenalty>
</CancelPenalties>
</RatePlan>
</RatePlans>
<RoomRates>
<RoomRate>
<Rates>
<Rate EffectiveDate="2018-08-04">
<Base AmountBeforeTax="6000" AmountAfterTax="6000" DecimalPlaces="2" CurrencyCode="EUR" />
</Rate>
<Rate EffectiveDate="2018-08-05">
<Base AmountBeforeTax="7000" AmountAfterTax="7000" DecimalPlaces="2" CurrencyCode="EUR" />
</Rate>
</Rates>
</RoomRate>
</RoomRates>
<GuestCounts>
<GuestCount AgeQualifyingCode="10" Count="2" />
</GuestCounts>
<Total AmountBeforeTax="13000" AmountAfterTax="13000" DecimalPlaces="2" CurrencyCode="EUR" />
</RoomStay>
</RoomStays>
</OTA_HotelAvailRS>
Element / @Attribute | Parent | Info | Values | Occurrence |
---|---|---|---|---|
HotelStays | OTA_HotelAvailRS | A collection of summarized information about the requested hotels' general availability for each day in the requested range. | 1 | |
HotelStay | HotelStays | A quick view of the requested hotels' general availability for each day in the requested range. | 0..n | |
@RoomStayRPH | HotelStay | References one or more room stays associated with this hotel stay. | [integer] | 1 |
BasicPropertyInfo | HotelStay | Property Information for the Hotel Stay. An abbreviated short summary of hotel descriptive information. | 1 | |
@HotelCode | BasicPropertyInfo | The ID of the hotel. | [integer] | 1 |
@HotelName | BasicPropertyInfo | A text field used to communicate the proper name of the hotel. | [string] | 1 |
@ChainCode | BasicPropertyInfo | The ID of the chain. | [integer] | 0..1 |
Address | BasicPropertyInfo | Public address of the hotel property. Information about an address that identifies a location for a specific purpose. | 1 | |
@FormattedInd | Address | Specifies if the associated data is formatted or not. When True , then it is formatted; when False , then not formatted. |
True False |
1 |
StreetNmbr | Address | May contain the street number and optionally the street name. | [string] | 0..1 |
AddressLine | Address | When the address is unformatted (FormattedInd="False") these lines will contain free form address details. When the address is formatted and street number and street name must be sent independently, the street number will be sent using StreetNmbr, and the street name will be sent in the first AddressLine occurrence. | [string] | 1 |
PostalCode | Address | Post Office Code number. | [string] | 1 |
CityName | Address | City (e.g., Dublin), town, or postal station (i.e., a postal service territory, often used in a military address). | [string] | 1 |
StateProv | Address | State or Province name (e.g., Zuid-Holland). | [string] | 1 |
CountryName | Address | Country name (e.g., Ireland). | [string] | 1 |
TPA_Extensions | Address | A placeholder in the schema to allow for additional elements and attributes to be included per Trading Partner Agreement (TPA). | 1 | |
StateID | TPA_Extensions | The ID of the state. | [integer] | 1 |
CountryID | TPA_Extensions | The ID of the country. | [integer] | 1 |
Award | BasicPropertyInfo | An element that identifies the hotel ratings. | 1 | |
@Rating | Award | The actual award or rating received by the hotel facility. | [integer] | 1 |
ContactNumbers | BasicPropertyInfo | Collection of hotel contact numbers. | 1 | |
ContactNumber | ContactNumbers | Contact numbers of the hotel property. Examples are telephone and fax numbers. | 1..n | |
@PhoneTechType | ContactNumber | Indicates type of technology associated with this telephone number. | Refer to Code List Phone Technology Type (PTT) | 1 |
@CountryAccessCode | ContactNumber | Code assigned by telecommunications authorities for international country access identifier. | [integer] | 0..1 |
@AreaCityCode | ContactNumber | Code assigned for telephones in a specific region, city, or area. | [integer] | 0..1 |
@PhoneNumber | ContactNumber | Telephone number assigned to a single location. | [integer] | 1 |
Policy | BasicPropertyInfo | Policy information for this hotel. | 1 | |
@CheckInTime | Policy | The checkin time required by this hotel for a room stay. | [hh:mm:ss] | 1 |
@CheckOutTime | Policy | The checkout time required by this hotel for a room stay. | [hh:mm:ss] | 1 |
Position | BasicPropertyInfo | An element that identifies the geographic position of the hotel. | 1 | |
@Latitude | Position | The measure of the angular distance on a meridian north or south of the equator. | [decimal] | 1 |
@Longitude | Position | The measure of the angular distance on a meridian east or west of the prime meridian. | [decimal] | 1 |
RoomStays | OTA_HotelAvailRS | A collection of details on the Room Stay including Guest Counts, Time Span of this Room Stay, and financial information related to the Room Stay, including Guarantee, Deposit and Payment and Cancellation Penalties. | 1 | |
RoomStay | RoomStays | Details on the Room Stay including Guest Counts, Time Span of this Room Stay, and financial information related to the Room Stay, including Guarantee, Deposit and Payment and Cancellation Penalties. | 0..n | |
@IsAlternate | RoomStay | Indicates the RoomStay is an alternate offer. Default=False . |
True False |
1 |
@RoomStayGroupID | RoomStay | An ID of a group of rooms which must be booked together. | [integer] | 1 |
@RPH | RoomStay | Identifies the room stay for use in the hotel stay. | [integer] | 1 |
TimeSpan | RoomStay | The Time Span which covers the Room Stay. Used to specify a time window range by either specifying an earliest and latest date for the start date and end date or by giving a date with a time period that can be applied before and/or after the start date. | 1 | |
@Start | TimeSpan | The starting value of the time span. | [hh:mm:ss] | 1 |
@End | TimeSpan | The ending value of the time span. | [hh:mm:ss] | 1 |
RoomTypes | RoomStay | A collection of Room Types associated with a particular Room Stay. | 1 | |
RoomType | RoomTypes | Provides details regarding rooms, usually guest rooms. | 1 | |
@RoomID | RoomType | The ID of the room. | [integer] | 1 |
@RoomTypeCode | RoomType | Specific system room type code, ex: A1K, A1Q etc. | [string] | 1 |
@Composite | RoomType | Indicates that the room (suite) is a composite of smaller units. True for a virtual room / package, False for a room. |
True False |
1 |
RoomDescription | RoomType | Textual information regarding the room. An indication of a new paragraph for a sub-section of a formatted text message. | 1 | |
Text | RoomDescription | Formatted text content. | [string] | 1 |
Occupancy | RoomType | Provides parameters of occupancy limits. | 0..n | |
@AgeQualifyingCode | Occupancy | Defines an age range or age category of a guest. | Refer to Code List Age Qualifying Code (AQC) | 1 |
@MaxOccupancy | Occupancy | Maximum number of persons allowed in a unit of accommodation or place. | [integer] | 1 |
RatePlans | RoomStay | A collection of Rate Plans associated with a particular Room Stay. | 1 | |
RatePlan | RatePlans | Defines the details of the rate plan as used in the booking process. | 1 | |
@RatePlanCode | RatePlan | The ID of the rate. | [integer] | 1 |
@RatePlanName | RatePlan | Provides the name of the rate plan or group. | [string] | 1 |
@AvailableQuantity | RatePlan | Provides the number of rooms available within this rate plan. | [integer] | 1 |
RatePlanDescription | RatePlan | Describes the rate plan. An indication of a new paragraph for a sub-section of a formatted text message. | 1 | |
Text | RatePlanDescription | Formatted text content. | [string] | 1 |
MealsIncluded | RatePlan | Defines which meals are included with this rate program. | 1 | |
@MealPlanIndicator | MealsIncluded | When True , a meal plan is included in this rate plan. When False , a meal plan is not included in this rate plan. |
True False |
1 |
@MealPlanCodes | MealsIncluded | Used to identify the types of meals included with a rate plan. | Refer to Code List Meal Plan Type (MPT) | 1 |
CancelPenalties | RatePlan | A collection of required payments that are part of the booking restriction. A collection of CancelPenalty. | 1 | |
CancelPenalty | CancelPenalties | Defines the cancellation penalty of the hotel facility. The CancelPenalty class defines the cancellation policy of the hotel facility. | 1 | |
@CancelPolicyIndicator | CancelPenalty | When True , indicates a cancel policy exits. When False , no cancel policy exists. Typically this indicator is used when details are not being sent. |
True False |
1 |
@NonRefundable | CancelPenalty | Indicates that any prepayment for the reservation is non-refundable, therefore a 100% penalty on the prepayment is applied, irrespective of deadline. | True False |
1 |
Deadline | CancelPenalty | Cancellation deadline, absolute or relative. | 0..1 | |
@AbsoluteDeadline | Deadline | Defines the absolute deadline. Either this or the offset attributes may be used. | [integer] | 0..1 |
@OffsetDropTime | Deadline | An enumerated type indicating when the deadline drop time goes into effect. | BeforeArrival |
0..1 |
@OffsetTimeUnit | Deadline | The units of time, e.g.: days, hours, etc., that apply to the deadline. | Days |
0..1 |
@OffsetUnitMultiplier | Deadline | The number of units of DeadlineTimeUnit. | [integer] | 0..1 |
PenaltyDescription | CancelPenalty | Text description of the Penalty in a given language. An indication of a new paragraph for a sub-section of a formatted text message. | 0..1 | |
Text | PenaltyDescription | Formatted text content. | [string] | 1 |
AmountPercent | CancelPenalty | Cancellation fee expressed as a fixed amount, or percentage of/or room nights. Defines the percentage basis for calculating the fee amount or the amount. | 0..1 | |
@ApplyAs | AmountPercent | Used to specify how the amount needs to be applied with respect to the stay. | FirstNightPayment |
0..1 |
@NmbrOfNights | AmountPercent | The number of nights of the hotel stay that are used to calculate the fee amount. | [integer] | 0..1 |
@Percent | AmountPercent | The percentage used to calculate the amount. | [double] | 0..1 |
RoomRates | RoomStay | A collection of Room Rates associated with a particular Room Stay. | 1 | |
RoomRate | RoomRates | A room rate. | 1 | |
Rates | RoomRate | Individual rate amount. This rate is valid for a range of number of occupants and an occupant type. Individual rate amount. This rate is valid for a range of number of occupants and an occupant type. | 1 | |
Rate | Rates | The Rate contains a collection of elements that define the amount of the rate, associated fees, additional occupant amounts as well as payment and cancellation policies. Taxes can be broken out or included within the various amounts. A currency can be associated to each amount. The applicable period of the rate are indicated by the effective dates. Restrictions that may apply to that rate, such as the minimum or maximum length of stay, stay-over dates (such as a Saturday night), min/max guests applicable for the rate, and age group (ex Adult) are attributes of Rate. It indicates the number of units that the quoted rate is based upon, as well as the TimeUnits type used that the rate is based upon, e.g.: 3days at $100.00 per day. | 1..n | |
@EffectiveDate | Rate | Indicates the starting date. | [yyyy-MM-dd] | 1 |
Base | Rate | The base amount charged for the accommodation or service per unit of time (ex: Nightly, Weekly, etc). Note that any additional charges should itemized in the other elements. The total amount charged for the service including additional amounts and fees. | 1 | |
@AmountBeforeTax | Base | The total amount not including any associated tax (e.g., sales tax, VAT, GST or any associated tax). | [numeric] | 1 |
@AmountAfterTax | Base | The total amount including all associated taxes (e.g., sales tax, VAT, GST or any associated tax). | [numeric] | 1 |
@DecimalPlaces | Base | The ISO 4217 standard "minor unit" for the number of decimal places for a particular currency. | [integer] | 1 |
@CurrencyCode | Base | EUR , GBP , USD , ... |
Refer to ISO 4217 | 1 |
Total | RoomStay | The total amount charged for the Room Stay including additional occupant amounts and fees. If TaxInclusive is set to True, then taxes are included in the total amount. The total amount charged for the service including additional amounts and fees. | 1 | |
@AmountBeforeTax | Total | The total amount not including any associated tax (e.g., sales tax, VAT, GST or any associated tax). | [numeric] | 1 |
@AmountAfterTax | Total | The total amount including all associated taxes (e.g., sales tax, VAT, GST or any associated tax). | [numeric] | 1 |
@DecimalPlaces | Total | The ISO 4217 standard "minor unit" for the number of decimal places for a particular currency. | [integer] | 1 |
@CurrencyCode | Total | EUR , GBP , USD , ... |
Refer to ISO 4217. | 1 |
GuestCounts | RoomStay | A collection of Guest Counts associated with Room Stay. A child Guest Count element is required for each distinct age group. A collection of GuestCount by age group. | 1 | |
GuestCount | GuestCounts | A recurring element that identifies the number of guests and ages of the guests. | 1..n | |
@AgeQualifyingCode | GuestCount | A code representing a business rule that determines the charges for a guest based upon age range. This attribute allows for an increase in rate by occupant class. | Refer to Code List Age Qualifying Code (AQC) | 1 |
@Count | GuestCount | The number of guests in one AgeQualifyingCode or Count. | [integer] | 1 |