检索可容纳提供的住客数并满足任何其他条件的特定酒店的客房数据。

可以构建该请求以提供用于客房选择或其他预订前购买区域的数据,或者在提交预订之前验证价格数据。

在进行预订之前需要采用方法 2 – 它可确认最新定价和可订空房数据,以确保预订成功。

方法 1: 返回所有客房的可订空房和定价信息

将该方法用于客房选择页面或需要有关酒店内多间客房信息的其他购买区域。

除了所需的基本元素外,您还可以发送指示的可选元素以请求客房级别的图像或定制回复中包含的酒店信息类型。

Name Required
apiExperience
hotelId
arrivalDate
departureDate
RoomGroup
includeRoomImages
includeHotelFeeBreakdown
options

方法 2: 验证所选客房的付款情况

仅在客户选择了要预订的特定客房后才可使用该选项。

该请求配置将检索客户所选客房的最新价格数据,以帮助降低由于价格不匹配或订满错误导致的预订失败几率。

Name Required
apiExperience
hotelId
arrivalDate
departureDate
RoomGroup
rateCode
roomTypeCode
includeDetails
includeHotelFeeBreakdown
请求格式
XML/REST URL: GET http://api.ean.com/ean-services/rs/hotel/v3/avail?
XML 父元素: <HotelRoomAvailabilityRequest>
独特协议要求
REST:客房和住客计数的格式与 XML 不同。请参阅酒店列表页上的 REST 客房格式部分

请注意:此服务所需的参数现已通过上述两种服务方法进行分解。

请求参数

基本参数
名称 对方法是否必需 说明
apiExperience 字符串 1&2 使用此属性可识别您的请求源。针对您发送的每个请求,从下文提供的集合中选择一个适用的值。

值:
PARTNER_CALL_CENTER - 来自呼叫中心代理的请求
PARTNER_WEBSITE - 来自面向客户网站的请求
PARTNER_MOBILE_WEB - 来自手机格式网站的请求
PARTNER_MOBILE_APP - 来自手机 APP 的请求
PARTNER_BOT_CACHE - 来自缓存 bot 的请求
PARTNER_BOT_REPORTING - 来自报告 bot 的请求

hotelId 长整型 1&2 需要查询可订空房的酒店 ID
arrivalDate 字符串 1&2

入住日期,格式为 MM/DD/YYYY。

包括今天的日期以请求当天的可订空房。预订最晚可以到酒店当地时间晚上 11:59(太平洋标准时间和太平洋岛屿时间晚上 9:59)。

departureDate 字符串  1&2 退房日期,格式为 MM/DD/YYYY。

最多可搜索该日期往后 500 天内的可订空房。

总住宿天数不能超过 28 晚。
RoomGroup 对象 1&2 定义住客和客房计数的 Room 数组的容器。如果您在列表请求中使用 REST,则请务必继续遵循独特的 REST 格式
RoomGroup.Room 数组 1&2 Room 节点数定义请求的客房数。每个节点都有自己的成人/儿童住客计数。

酒店规定每次预订的客房不得超过 8 间。
Room.numberOfAdults 整型 1&2 客房的成人住客计数。

将入住人数限制在酒店的酒店列表回复中返回的最大 maxRoomOccupancy 内(最大值为 8)。
Room.numberOfChildren 整型 儿童计数 > 0 时为 1&2 客房的儿童住客计数。当有儿童住客时,对所有酒店均为必填项。与 childAges 结合使用来确定可订空房及房价。
Room.childAges 逗号分隔的
整型列表
儿童计数 > 0 时为 1&2 发送客房中各个儿童的年龄列表,以逗号隔开。

一些酒店对儿童和成人的定义不同,因此在指定了儿童住客时,客户还必须提供此信息。例如酒店可能将年龄为 17 岁的儿童视为成人,如果某客房中之前确定的成人住客数已达到允许的最大值,则需要收取加人费用。
roomTypeCode 字符串 仅限 2 只有在客户的特定客房选择确定后才使用。会返回客房的取消政策、床型和吸烟偏好。

同时还发送 rateCode
rateCode 字符串 仅限 2 只有在客户的特定客房选择确定后才使用。会返回客房的取消政策、床型和吸烟偏好。

同时还发送 roomTypeCode
includeDetails 布尔型 仅限 2 在客户已经选择客房之后,用于方法 2

发送为 true,以便为所提供客房和房价代码返回预订就绪房价数据。

roomTypeCoderateCode 一起发送
includeRoomImages 布尔型 检索指定 hotelId 的客房级图片。

还作为纯房价请求提供。
includeHotelFeeBreakdown 布尔型 返回元素 HotelFees 数组的更详细回复结构,其包括应用每项费用的频率以及如何应用。在 minorRev=24 或更高版本中提供。
options 字符串或逗号分隔的
字符串列表
当使用方法 1 为酒店填充客房选项时,请使用此参数代替单独的酒店信息请求。

发送单个值或以逗号分隔列表的形式发送值组合。

值:
HOTEL_DETAILS 仅检索酒店详细信息(酒店说明)
ROOM_TYPES 检索客房类型
ROOM_AMENITIES 检索客房服务/设施列表(小厨房、电视等)
PROPERTY_AMENITIES 检索酒店服务/设施列表(spa、健身房、会议室)
HOTEL_IMAGES 仅检索酒店图片 URL(非客房图片)
numberOfBedRooms 整型 该参数仅对公寓/度假短租有效。指定请求的客房数,最大值为 4。
supplierType 字符串 提供上一酒店列表回复中返回的相同值。

值:
E:Expedia Collect
rateKey 字符串 参数的关键字决定之前酒店列表回复中提供的房价。
酒店客房回复
返回所请求的特定酒店在指定的入住日期能容纳指定住客人数的客房,或确认可订空房情况和所提供的 roomTypeCoderateCode 的定价。

该回复还返回入住说明、酒店其他详细信息,最重要的是预订所需的 rateKey

如果方法 1 请求中包含 options 对象,则也会返回此对象中指定的详细信息(如果有)。

回复内容
父元素: HotelRoomAvailabilityResponse
属性: size - 返回的客房数

名称 说明
hotelId 长整型 酒店的 ID。任何后续预订请求中都将使用该 ID。
arrivalDate 字符串 确认请求中提交的入住日期。
departureDate 字符串 确认请求中提交的退房日期。
hotelName 字符串 酒店名称
hotelAddress 字符串 酒店街道地址
hotelCity 字符串 酒店所在的城市
hotelStateProvince 字符串 包含指定城市的州/省的双字符代码。仅对 US、CA 和 AU 国家代码返回结果。

参考:
美国州代码
加拿大省份/地区代码
澳大利亚省份/地区代码
  • 澳大利亚首都 - AC
  • 新南威尔士州 - NW
  • 北部地区 - NO
  • 昆士兰 - QL
  • 南澳大利亚 - SA
  • 塔斯马尼亚岛 - TS
  • 维多利亚 - VC
  • 西澳大利亚 - WT
hotelCountry 字符串 酒店所在国家或地区的双字符 ISO-3166 代码。
numberOfRoomsRequested 整型 确认请求中发送的 Room 节点数。
checkInInstructions 字符串 如果由酒店返回,则必须显示。
可能包含入住时收取的费用、非工作时入住的说明等
HotelRoomResponse 数组 每个节点包含酒店的单个客房的房价和详细信息。该数组的 JSON 回复格式可能会在 Axis 中造成问题
HotelRoomResponse.policy 字符串 其他政策,如入住时所需的照片 ID。
HotelRoomResponse.rateCode 字符串 所显示房价的代码。
HotelRoomResponse.roomTypeCode 字符串 客房的房型代码。

如果在可订空房请求中发送 options 参数,则不会返回该元素。该值会转而以 RoomType 对象的 roomCode 属性发送。
HotelRoomResponse.rateDescription 字符串

客房和要收取的房价的简短说明,例如特大豪华房 - 全包式。

建议着重显示。

HotelRoomResponse.roomTypeDescription 字符串 客房类型(如特大豪华房)的简短说明。

如果在可订空房请求中发送 options 参数,则不会返回该元素。该值会转而以 RoomType 对象的 description 元素发送。
HotelRoomResponse.supplierType 字符串 酒店的供应商。该供应商将用于处理下达的任何预订。

值:
E:Expedia Collect
HotelRoomResponse.otherInformation 字符串 酒店的其他信息(如果有)。
HotelRoomResponse.propertyId 字符串 Expedia 为酒店指定的 ID。对 Expedia 进行交叉引用时,使用该值映射到 hotelId。还可在数据库目录中获得完整的交叉引用文件。
HotelRoomResponse.smokingPreferences 逗号分隔的字符串列表 客房的可用吸烟偏好(如果有)。

值:
NS:禁止吸烟
S:允许吸烟
E:二者之一
HotelRoomResponse.minGuestAge 整型 客房中住客的最低年龄,如 1821(如果禁止儿童入住)。如果没有最低年龄限制,则会返回 0 或不返回。
HotelRoomResponse.quotedOccupancy 整型 提供的房价根据住客计数而定。

如果房价不在此次住客计数和 rateOccupancyPerRoom 中提供的住客计数间更改,则可能低于指定住客计数。
HotelRoomResponse.rateOccupancyPerRoom 整型 根据提供房价,指示客房可容纳的住客数。

如果请求的住客计数超过该值(或多个客房的值的总和),请在预订前提醒用户会出现此类差额,让他们了解可能需要交付加人费用或酒店无法完全容纳所有成员。
字符串 模板上相应可订空房页面中的深层链接,创建混合网站时使用。

返回的格式仅与旧模板帐户兼容。如果您拥有 Chameleon 模板帐户,则 URL 将返回错误。请参阅混合网站页面上的深层链接格式指南,创建与您的模板兼容的深层链接。

这些链接也可以通过 CNAME 设置掩码
HotelRoomResponse.BedTypes 数组 各间客房的床型选择。可能返回在预订时包含的单个床型或选择。查看床型的详细信息
HotelRoomResponse.ValueAdds ValueAdd 的容器 对于指定的客房和房价,包含 ValueAdd 元素(如果可用)的数组。具有 size 属性用于指示返回的增值项目数。
ValueAdds.ValueAdd 数组

包含 description 元素,用于为指定客房和房价提供的免费服务,例如免费早餐或无线上网。

对于 minorRev=28 及更高版本,不会返回数字 id 属性 - 仅提供 description。您必须至少使用 minorRev=28 才能在行程和预订回复中返回增值项目。

使用 minorRev=26 或更低版本时,会返回以下已知 id 属性及其 description 值。

ID description
1 所有用餐
2 欧式早餐
4 全早餐
8 英式早餐
16 免费午餐
32 免费晚餐
64 餐饮券
128 免费泊车
256 免费机场泊车
512 全包式
1024 免费高速上网
2048 免费无线上网
4096 两人份欧式早餐
8192 两人份早餐
16384 免费代客泊车
32768 免费机场接送
65536 免费客房升级
131072 游乐场券
262144 入住赠礼
524288 Spa 券
1048576 高尔夫券
2097152 夜总会 VIP 专用通道
4194304 自助餐(买二赠一)
8388608 免费滑雪礼券和器具出租
16777216 自助早餐
33554432 早晚餐
67108864 全部三餐
134217728 整体厨房
268435456 老虎机
536870912 娱乐场券
1073741824 高尔夫球比洞赛
HotelRoomResponse.RoomImages 数组 所有可用客房级图片 URL 数组(如果通过 includeRoomImages 参数请求)。
HotelRoomResponse.RoomType 对象 当发送带有 ROOM_TYPES 和/或 ROOM_AMENITIES 值的 options 参数时返回。

属性:
roomCode:替代 roomTypeCode 元素
roomTypeId
RoomType.description 字符串 替代 roomTypeDescription 元素。必须显示在各个客房页面以及任何预订和预订确认页面上。
RoomType.descriptionLong 字符串 更为详细的客房说明(如果有)。
RoomType.roomAmenities 数组 客房服务/设施列表(如果有,要求与酒店信息回复中列出的内容和结构相同)
RoomType.HotelDetails 对象 酒店说明内容(要求与酒店信息回复中列出的内容和结构相同)
RoomType.PropertyAmenities 对象 酒店服务/设施信息(要求与酒店信息回复中列出的内容和结构相同)
RoomType.HotelImages 对象 酒店图片信息(要求与酒店信息回复中列出的内容和结构相同)
HotelRoomResponse.RateInfos RateInfo 的容器 包含为各间客房提供详细房价信息的 RateInfo 元素的数组。

如果您使用的是在 minorRev=6 或更早版本上运行的旧集成,返回的 RateInfo 将没有 RateInfos 容器。
RateInfos.RateInfo 对象 包含单个客房在多个不同对象和各个值中的所有房价信息。

属性:
priceBreakdown 布尔型 指示是否包含完整价格细分,包括要收取的税和总价。
promo 布尔型 指示返回的房价是否为促销房价。
rateChange 布尔型 指示房价是否至少与住宿期间某一晚的房价不同。
RateInfo.RoomGroup 对象 在请求中发送的 RoomGroup 对象的内容应用到提供的房价时,确认这些内容。对于 minorRev=29 和更高版本,包含每间客房的每晚房价详细信息。
RoomGroup.Room 对象 对象的子元素可确认用于计算提供的房价的特定的 numberOfAdultsnumberOfChildrenchildAges
Room.rateKey 对象 决定房价的搜索参数和其他值的关键字

请注意,该值通常会与酒店可订空房情况回复中返回的值不同 - 通常将该值由该回复传递至预订请求。

每次更改搜索参数时(住客计数更改、变更住宿日期、添加儿童等),必须发送新的请求为该参数获取新值。

对于 minorRev=18 及更低版本,该元素会在恢复的主体中返回。
Room.ChargeableNightlyRates 数组 客房 NightlyRate 数组的容器。返回的房价具体针对各间客房,并且根据住宿时长按顺序返回。

对于多间客房的平均每晚费用,请使用 nightlyRatesPerRoom 提供的值。

针对 minorRev=29 及更高版本返回。
ChargeableNightlyRates.NightlyRate 对象 提供请求住宿期间一晚的房价。在此位置内返回时,房价始终特定于包含的 Room

指示是否存在促销房价、基本房价以及应用促销后的房价(如果适用)。仅包含属性。

针对 minorRev=29 及更高版本返回。

属性:
promo 布尔型 指示是否为此晚房价应用了促销价。
rate 浮点型 应用促销价(如果有)后的每晚房价。
baseRate 浮点型 应用促销价(如果有)前的每晚房价。
ChargeableNightlyRates.NightlyRate 对象

转换为客户请求的货币后的房价信息。仅当请求的货币不可用于酒店计费或在客户的市场区域内不可用于计费时返回。包含与 ChargeableNightyRates 相同的属性。针对 minorRev=29 及更高版本返回。

ChargeableNightlyRates.
ConvertedNightlyRates
对象 转换为客户请求的货币后的房价信息。仅当请求的货币不可用于酒店计费或在客户的市场区域内不可用于计费时返回。包含与 ChargeableNightyRates 相同的属性。针对 minorRev=29 及更高版本返回。
RateInfo.promoId 字符串 返回促销优惠的 ID(如果有)。在低于 minorRev=20HotelRoomResponse 中返回。
RateInfo.promoDescription 字符串 返回促销的说明(如果有)。将最多返回 255 个字符。在低于 minorRev=20HotelRoomResponse 中返回。
RateInfo.promoDetailText 字符串 返回促销的额外详情(如果有)。在 minorRev=20 或更低版本的 HotelRoomResponse 中返回。
RateInfo.nonRefundable 布尔型 指示预订是否为不可退款。如果回复,必须显示 - 成功预订后,所有收费都是最终收费。在低于 minorRev=20HotelRoomResponse 中返回。
RateInfo.depositRequired 布尔型 对于 Expedia Collect 始终返回 true
RateInfo.rateType 字符串 指示返回的房价是通过 EAN 预付还是住宿完成后在酒店支付。对于预付可订空房,返回值 MerchantStandard,对于住宿后支付则不返回任何值。
对于 minorRev=20 或更高版本,在此位置中返回该元素。minorRev=1819 将在回复的正文中返回该元素。
RateInfo.currentAllotment 整型 酒店剩余的可订客房数。使用该值可创建紧急消息规则,以提示用户在旅行高峰日期或热门酒店出现可订空房不足的情况。

如果该值返回 0,则表示酒店不缺客房。只是不符合计算该值所需的规则,该值不表示客房绝对可订。在低于 minorRev=20HotelRoomResponse 中返回。
RateInfo.cancellationPolicy 字符串 酒店关于此客房的取消政策。必须显示在各个客房页面以及任何预订和预订确认页面上。在低于 minorRev=20HotelRoomResponse 中返回。
RateInfo.CancelPolicyInfoList Cancel
PolicyInfo
的容器
取消政策的详细细节,通常是确定罚款期的时间和对取消收取的罚款。在低于 minorRev=20HotelRoomResponse 中返回。
查看 CancelPolicyInfo 数组的详细信息
RateInfo.ChargeableRateInfo 对象 此对象的属性包含要为预订收取的绝对总价以及房价平均值和总计。对象中的节点提供有关各晚房价和附加费的详情。

属性:
total 浮点型 要为预订收取的所有每晚房价、税和附加费的总计。这是必须显示给客户的总计值,包含在预订请求中。
surchargeTotal 浮点型 Surcharges 数组中 TaxAndServiceFeeExtraPersonFee 的总和。
nightlyRateTotal 浮点型 此对象中包含的 nightlyRatesPerRoom 数组中所有值的总和。
maxNightlyRate 浮点型 所有返回房价的最高每晚房价
currencyCode 字符串 所返回房价的货币代码
commissionableUsdTotal 浮点型 用于计算合作伙伴佣金的金额,以美元为单位。每晚房价总计减去附加费。
averageRate 浮点型 应用任何促销值的所有每晚房价的平均值,不含附加费。
averageBaseRate 浮点型 没有应用任何促销值的所有房价的平均值,不含附加费。如果促销存在,会返回与之前的值相同的值。
ChargeableRateInfo.
nightlyRatesPerRoom
数组 NightlyRate 数组的容器。具有 size 属性,用于指示数组中的节点数,这将与请求中的晚数对应。按照住宿日期的顺序相继返回房价。
nightlyRatesPerRoom.NightlyRate 不适用

提供请求住宿期间一晚的房价。

指示是否存在促销房价、基本房价以及应用促销后的房价(如果适用)。仅包含属性。

对于多间客房请求,该值是所有客房每晚费用的平均值。EAN 建议使用新的每间客房 ChargeableNightlyRates 数组来显示多间客房价格。

对于 minorRev=28 及更低版本的多客房请求,此元素仅提供第一间客房的房价,而不是平均房价。



属性:
promo 布尔型 指示是否为此晚房价应用了促销价。
rate 浮点型 应用促销价(如果有)后的每晚房价。
baseRate 浮点型 应用促销价(如果有)前的每晚房价。
RateInfo.promoType 字符串 指示返回的任何促销是特定于移动设备的促销还是标准促销。对于移动促销返回 Mobile,对于其他所有促销返回 Standard
为了返回移动促销,您必须通过适当的 customerUserAgent 字符串标识您的移动网站或应用程序。
minorRev=21 或更高版本中提供。
ChargeableRateInfo.Surcharges 数组 Surcharge 数组的容器。该数组逐个列出各个附加费,这些附加费组成了为 surchargeTotal 返回的值。具有 size 属性,用于指示数组中的节点数。
Surcharges.Surcharge 不适用 详细说明单个附加费的金额和类型。仅包含属性。

属性:
amount 浮点型 特定附加费的金额
type 字符串 附加费的名称。
可能的值:
  • TaxAndServiceFee
  • ExtraPersonFee
  • Tax
  • ServiceFee
  • SalesTax
  • HotelOccupancyTax

只有 TaxAndServiceFeeExtraPersonFee 会加到 surchargeTotal 中。所有其他值都是 TaxAndServiceFee 值的各个组成部分。


注意:SalesTaxHotelOccupancyTax 附加费类型必须按纽约州法律显示。确保您期望并且捕捉这些值,以在最终价格明细中显示为“酒店入住人数和销售税”。

RateInfo.HotelFees 数组

该元素细分为酒店收取的某些税费,这些税费不在 Surcharges 数组中另行专门详细说明。

此元素中的所有值由酒店在访客入住或退房时收取。这些不是在预订时收取的任何费用的组成部分。

在填充时,使用此元素满足主要搜索引擎和聚合器要求的房价/税/费用格式。

包含 size 属性,以指示包含的费用数。
minorRev=19 或更高版本中提供。

HotelFees.HotelFee 包含用于单项费用的说明、金额和货币的属性。详细说明任何 VAT、州/城市税、度假胜地费或任何其他无法合理避免的收费。
使用由 ChargeableRateInfocurrencyCode 属性指示的可预订货币返回费用。

属性:
description 字符串 收费类型。可能的值:
  • MandatoryFee
  • MandatoryTax
  • ResortFee
amount 浮点型 费用的值。

minorRev=19 或更高版本中提供。

HotelFee.HotelFeeBreakdown 在请求中发送了 includeHotelFeeBreakdown 时返回。详细说明如何应用提供的费用以及应用的频率。

属性:
unit 字符串 如何分布费用。可能的值:
  • Per Person
  • Per Room
  • Per accommodation
  • Per house
  • Per apartment
  • Per adult
frequency 字符串 费用的频率。可能的值:
  • Per Night
  • Per Day
  • Per Stay
  • Per week

minorRev=24 或更高版本中提供。

RateInfo.ConvertedRateInfo 对象 转换为客户请求的货币后的房价信息。仅当结算货币和转换货币不同时返回,即酒店不接受客户请求的货币时。包含与 ChargeableRateInfo 相同的属性。