Heytrip B2B 分销接口
+1.版本信息
+版本号 | +变更内容 | +变更日期 | +变更人 | +备注 | +
---|---|---|---|---|
v1.0 | +新建 | +2024-03-13 | +colin | ++ |
v1.1 | +编辑 | +2024-03-29 | +james | +补充酒店:主图地址,亮点,酒店图片信息,客评, | +
v1.1.1 | +新建 | +2024-04-01 | +james | +添加商圈 行政区查询接口 | +
v1.1.2 | +编辑 | +2024-04-12 | +james | +补充酒店:附近位置信息 酒店实用信息 酒店政策说明 | +
v1.1.3 | +新建 | +2024-04-12 | +james | +新增酒店起价查询接口 | +
v1.1.4 | +编辑 | +2024-04-16 | +james | +酒店起价查询接口新添加每日价格 | +
v1.1.5 | +编辑 | +2024-04-25 | +james | +查价接口 新增每日价格 | +
v1.1.6 | +编辑 | +2024-05-10 | +james | +验单接口 入参 Nationality 为必填参数 | +
v1.1.7 | +编辑 | +2024-05-17 | +james | +补充酒店:增加 邮编字段 | +
V1.1.8 | +编辑 | +2024-05-21 | +james | +补充酒店:房型图片 | +
V1.1.9 | +编辑 | +2024-05-22 | +james | +编辑酒店静态信息:不开放酒店附近位置信息 属性中id,TypeName,TypeId字段 | +
V1.2.0 | +编辑 | +2024-06-19 | +james | +查价接口 开放 开票方式,是否提供专票字段 | +
V1.2.1 | +新增 | +2024-09-03 | +james | +新增增量接口 | +
V1.2.2 | +编辑 | +2025-01-08 | +james | +编辑酒店静态信息:开放酒店聚合指定供应商酒店id | +
V1.2.3 | +新增 | +2025-01-08 | +james | +新增热销酒店Id获取接口 | +
2.H址
+环境 | +地址 | +
---|---|
测试环境 | +https://distapi-sandbox.heytripgo.com | +
正式环境 | +https://distapi.heytripgo.com | +
swagger:https://distapi-sandbox.heytripgo.com/swagger
+3.公共入参
+3.1 Http request headers
+名称 | +类型 | +是否必填 | +描述 | +示例 | +
---|---|---|---|---|
Authorization | +string | +是 | +鉴权参数 | +Bearer apikey=yourAPIKey,signature=sha512Hash,timestamp=yourUNIXTimestamp | +
3.2 Signature 生成代码示例
+3.2.1 GoLang
+apiKey := "abc"
+secret := "123"
+timestamp := strconv.FormatInt(time.Now().Unix(), 10)
+c := sha512.New()
+c.Write([]byte(apiKey + secret + timestamp))
+signature := hex.EncodeToString(c.Sum(nil))
+authHeaderValue := "Bearer apikey=" + apiKey + ",signature=" + signature + ",timestamp=" + timestamp
+3.2.2 Java
+import java.io.UnsupportedEncodingException;
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
+import java.security.Timestamp;
+import java.util.Date;
+String apiKey = "abc";
+String secret = "123";
+Date date= new java.util.Date();
+Long timestamp = (date.getTime() / 1000);
+String signature = null;
+try {
+ String toBeHashed = apiKey + secret + timestamp;
+ MessageDigest md = MessageDigest.getInstance("SHA-512");
+ byte[] bytes = md.digest(toBeHashed.getBytes("UTF-8"));
+ StringBuilder sb = new StringBuilder();
+ for(int i=0; i< bytes.length ;i++){
+ sb.append(Integer.toString((bytes[i] & 0xff) + 0x100, 16).substring(1));
+ }
+ signature = sb.toString();
+} catch (NoSuchAlgorithmException e) {
+ e.printStackTrace();
+} catch (UnsupportedEncodingException e) {
+ e.printStackTrace();
+}
+String authHeaderValue = "Bearer apikey=" + apiKey + ",signature=" + signature + ",timestamp=" + timestamp;
+3.2.3 C#
+String apiKey = "abc";
+String secret = "123";
+TimeSpan epochTicks = new TimeSpan(new DateTime(1970, 1, 1).Ticks);
+TimeSpan unixTicks = new TimeSpan(DateTime.UtcNow.Ticks) - epochTicks;
+double unixTime = (int)unixTicks.TotalSeconds;
+var toBeHashed = apiKey + secret + unixTime;
+var bytes = System.Text.Encoding.UTF8.GetBytes(toBeHashed);
+using (var hash = System.Security.Cryptography.SHA512.Create())
+{
+ var hashedInputBytes = hash.ComputeHash(bytes);
+ var hashedInputStringBuilder = new System.Text.StringBuilder(128);
+ foreach (var b in hashedInputBytes)
+ hashedInputStringBuilder.Append(b.ToString("X2"));
+ var signature = hashedInputStringBuilder.ToString();
+ var authHeaderValue = "Bearer apikey=" + apiKey + ",signature=" + signature +",timestamp=" + unixTime;
+}
+3.2.4 PHP
+$apiKey = "abc";
+$secret = "123";
+$timestamp = time();
+$authHeader = 'Authorization: Bearer apikey=' . $apiKey . ',signature=' . hash("sha512", $apiKey.$secret.$timestamp) . ',timestamp=' . time();
+3.2.5 Python
+#!/usr/bin/env python
+import hashlib
+import time
+apiKey = "abc"
+secret = "123"
+timestamp = str(int(time.time()));
+authHeaderValue = "Bearer apikey=" + apiKey + ",signature=" + hashlib.sha512(apiKey+secret+timestamp).hexdigest() + ",timestamp=" + timestamp
+3.2.6 Ruby
+require 'digest'
+apiKey="abc"
+secret="123"
+timestamp = Time.now.to_i
+toBeHashed = "#{apiKey}#{secret}#{timestamp}"
+signature = Digest::SHA2.new(512).hexdigest(toBeHashed)
+authHeaderValue = "Bearer apikey=#{apiKey},signature=#{signature},timestamp=#{timestamp}"
+3.2.7 Perl
+use strict;
+use Crypt::Digest::SHA512 qw(sha512_hex);
+my $apiKey = 'abc';
+my $secret = '123';
+my $timestamp = time;
+my $sig = sha512_hex($apiKey . $secret . $timestamp);
+my $authHeaderValue = "Bearer apikey=".$apiKey.",signature=".$sig.",timestamp=".$timestamp;
+print $authHeaderValue;
+3.2.8 JavaScript
+var crypto = require('crypto');
+var request = require('request');
+var apiKey = 'abc';
+var secret = '123';
+var timestamp = Math.round(new Date().getTime() / 1000);
+var hash = crypto.createHash('sha512').update(apiKey + secret + timestamp).digest('hex');
+var authHeaderValue = 'Bearer apikey=' + apiKey + ',signature=' + hash + ',timestamp=' + timestamp;
+4.公共出参
+4.1.Http Status Codes
+Code | +描述 | +备注 | +
---|---|---|
200 | +请求成功 | +具体响应数据见Response Body | +
429 | +请求过多,受限制 | +接口有QPS限制 | +
400 | +输入参数错误 | +错误信息见Response | +
401 | +鉴权失败,无权限访问 | +检查Authorization是否设置正确 | +
500 | +服务器错误 | ++ |
4.1.1.Status Code 401 错误示例:
+{
+ "Data": {
+ "Code": 401,
+ "Message": "HTTP status code:401"
+ },
+ "RequestId": "923c79bb-3581-4e4a-900a-ee81ae3a6a04"
+}
+Http Response Body
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
RequestId | +string | +是 | +请求编号 | +
Data | +object | +否 | +具体响应数据 | +
5.公共信息类接口
+5.1.语言
+项 | +说明 | +备注 | +
---|---|---|
Request URL | +https://distapi-sandbox.heytripgo.com/Common/Languages | +区分测试正式环境域名 | +
Request Method | +GET | ++ |
输出参数:
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Id | +string | +是 | +编号 | +
Name | +string | +是 | +名称 | +
Response samples:
+{
+ "Data": [
+ {
+ "Id": "zh-CN",
+ "Name": "简体中文"
+ },
+ {
+ "Id": "en-US",
+ "Name": "English (US)"
+ }
+ ],
+ "RequestId": "56f06a08-de78-4447-8cd0-cb815a3b8bd1"
+}
+6.地理位置信息类接口
+6.1.国家
+项 | +说明 | +备注 | +
---|---|---|
Request URL | +https://distapi-sandbox.heytripgo.com/Location/Countries | +区分测试正式环境域名 | +
Request Method | +GET | ++ |
输入参数:
+名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
language | +string | +是 | +语言 | +zh-CN | +
输出参数:
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Id | +string | +是 | +编号 | +
Name | +string | +是 | +名称 | +
Latitude | +string | +否 | +纬度 | +
Longitude | +string | +否 | +经度 | +
Response samples:
+{
+ "Data": [
+ {
+ "Id": "AD",
+ "Name": "安道尔",
+ "Latitude": "42.506526947021484",
+ "Longitude": "1.547698974609375"
+ }
+ ],
+ "RequestId": "957cff87-3934-4135-83ac-56a089914524"
+}
+6.2.城市
+项 | +说明 | +备注 | +
---|---|---|
Request URL | +https://distapi-sandbox.heytripgo.com/Location/Cities | +区分测试正式环境域名 | +
Request Method | +GET | ++ |
输入参数:
+名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
language | +string | +是 | +语言 | +zh-CN | +
countryId | +string | +是 | +国家编号 | +CN | +
输出参数:
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Id | +string | +是 | +编号 | +
Name | +string | +是 | +名称 | +
Latitude | +string | +否 | +纬度 | +
Longitude | +string | +否 | +经度 | +
Response samples:
+{
+ "Data": [
+ {
+ "Id": "1286",
+ "Name": "石家庄",
+ "Latitude": "38.041872",
+ "Longitude": "114.513931"
+ }
+ ],
+ "RequestId": "957cff87-3934-4135-83ac-56a089914524"
+}
+6.3 商圈 行政区查询接口
+项 | +说明 | +备注 | +
---|---|---|
Request URL | +https://distapi-sandbox.heytripgo.com/Location/searchAdminiBusDistrict | +区分测试正式环境域名 | +
Request Method | +GET | ++ |
输入参数:
+名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
language | +string | +是 | +语言 | +zh-CN | +
cityId | +string | +是 | +城市编码 | +233 | +
输出参数:
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Locations | +List | +是 | +位置条件 | +
AccommodationTypes | +Dictionary<string, string> | +是 | +酒店类型 | +
Facilities | +Dictionary<string, string> | +是 | +设施 | +
位置:GetHotelSearchConditionLocationDto
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Category | +string | +是 | +种类 | +
Items | +List | +是 | +明细 | +
Selected | +bool | +是 | +选中状态 | +
明细:B2bGetLocationInfoByTypeIdDto
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Type | +string | +是 | +类型:Place、 Shop、 Area | +
Id | +string | +是 | +编号 | +
Name | +string | +是 | +名称 | +
LocaleName | +string | +是 | +本地化名称 | +
Longitude | +string | +是 | +经度 | +
Latitude | +string | +是 | +纬度 | +
CountryCode | +string | +是 | +国家编号 | +
CountryName | +string | +是 | +国家名称 | +
CountryLocaleName | +string | +是 | +国家本地化名称 | +
CityId | +string | +是 | +城市编号 | +
CityName | +string | +是 | +城市名称 | +
CityLocaleName | +string | +是 | +城市本地化名称 | +
Response samples:
+ {
+ "Data": {
+ "Locations": [
+ {
+ "Category": "景点/地标",
+ "Items": [
+ {
+ "Type": "Place",
+ "Id": "6981",
+ "Name": "Tower of London",
+ "LocaleName": "伦敦塔",
+ "Longitude": "-0.075949",
+ "Latitude": "51.508112",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Place",
+ "Id": "6971",
+ "Name": "V&A - Victoria and Albert Museum",
+ "LocaleName": "维多利亚和艾伯特博物馆",
+ "Longitude": "-0.17238",
+ "Latitude": "51.496574",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Place",
+ "Id": "6983",
+ "Name": "Tower Bridge",
+ "LocaleName": "伦敦塔桥",
+ "Longitude": "-0.075356",
+ "Latitude": "51.505456",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ leName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Place",
+ "Id": "113293",
+ "Name": "Troubadour Wines",
+ "LocaleName": "Troubadour Wines",
+ "Longitude": "-0.191814",
+ "Latitude": "51.488497",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Place",
+ "Id": "13869",
+ "Name": "Ilford Golf Club",
+ "LocaleName": "伊尔福德高尔夫俱乐部",
+ "Longitude": "0.055472",
+ "Latitude": "51.565475",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Place",
+ "Id": "204425",
+ "Name": "King's Cross Station",
+ "LocaleName": "King's Cross Station",
+ "Longitude": "-0.123341",
+ "Latitude": "51.531986",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Place",
+ "Id": "151824",
+ "Name": "Embassy of Colombia",
+ "LocaleName": "哥伦比亚大使馆",
+ "Longitude": "-0.161345",
+ "Latitude": "51.499063",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910565248",
+ "Name": "New Park Fruiterers",
+ "LocaleName": "New Park Fruiterers",
+ "Longitude": "-0.1255244",
+ "Latitude": "51.4485133",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910565070",
+ "Name": "Mary Cook Antiques",
+ "LocaleName": "Mary Cook Antiques",
+ "Longitude": "-0.194781",
+ "Latitude": "51.506824",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910560787",
+ "Name": "Lidi",
+ "LocaleName": "Lidi",
+ "Longitude": "0.118996083212785",
+ "Latitude": "51.4959265",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910560537",
+ "Name": "Kingston Monday Market",
+ "LocaleName": "Kingston Monday Market",
+ "Longitude": "-0.298076",
+ "Latitude": "51.40912",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910569376",
+ "Name": "Partridges Food Market",
+ "LocaleName": "Partridges Food Market",
+ "Longitude": "-0.16061",
+ "Latitude": "51.490726",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910567466",
+ "Name": "Pak Discount Cash & Carry",
+ "LocaleName": "Pak Discount Cash & Carry",
+ "Longitude": "-0.2506357",
+ "Latitude": "51.5387965",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910547531",
+ "Name": "Happie Loves It",
+ "LocaleName": "Happie Loves It",
+ "Longitude": "-0.12242",
+ "Latitude": "51.51484",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910550887",
+ "Name": "It's Only Rock 'n' Roll",
+ "LocaleName": "It's Only Rock 'n' Roll",
+ "Longitude": "-0.15804",
+ "Latitude": "51.523697",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910553580",
+ "Name": "Hampstead Antique & Craft Emporium",
+ "LocaleName": "Hampstead Antique & Craft Emporium",
+ "Longitude": "-0.178534",
+ "Latitude": "51.55549",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910552345",
+ "Name": "Hope and Greenwood",
+ "LocaleName": "Hope and Greenwood",
+ "Longitude": "-0.120932",
+ "Latitude": "51.512627",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910551593",
+ "Name": "Grocery & General Store",
+ "LocaleName": "Grocery & General Store",
+ "Longitude": "0.176860300000044",
+ "Latitude": "51.5820152000001",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910553288",
+ "Name": "Hackett",
+ "LocaleName": "Hackett",
+ "Longitude": "-0.157841",
+ "Latitude": "51.49315",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910557121",
+ "Name": "Les Aldrich Music",
+ "LocaleName": "Les Aldrich Music",
+ "Longitude": "-0.146662",
+ "Latitude": "51.590237",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910549569",
+ "Name": "Havana Club",
+ "LocaleName": "Havana Club",
+ "Longitude": "-0.159357",
+ "Latitude": "51.49851",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910570065",
+ "Name": "Patrick Cox",
+ "LocaleName": "Patrick Cox",
+ "Longitude": "-0.158009",
+ "Latitude": "51.493736",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910570173",
+ "Name": "Oddbins Fine Wine Shops",
+ "LocaleName": "Oddbins Fine Wine Shops",
+ "Longitude": "-0.199637",
+ "Latitude": "51.5086",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910570321",
+ "Name": "Nilgiris",
+ "LocaleName": "Nilgiris",
+ "Longitude": "-0.103335014999971",
+ "Latitude": "51.3789773",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910548445",
+ "Name": "Horse Guards Building",
+ "LocaleName": "马卫队大楼",
+ "Longitude": "-0.127222",
+ "Latitude": "51.504722",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910547065",
+ "Name": "Hamilton's",
+ "LocaleName": "Hamilton's",
+ "Longitude": "-0.149697",
+ "Latitude": "51.510708",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910567994",
+ "Name": "Mysteries",
+ "LocaleName": "Mysteries",
+ "Longitude": "-0.126628",
+ "Latitude": "51.51471",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Shop",
+ "Id": "910570269",
+ "Name": "Primark Store",
+ "LocaleName": "Primark Store",
+ "Longitude": "-0.131049",
+ "Latitude": "51.51651",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ }
+ ],
+ "Selected": false
+ },
+ {
+ "Category": "行政区",
+ "Items": [
+ {
+ "Type": "Area",
+ "Id": "233",
+ "Name": "Greater London",
+ "LocaleName": "大伦敦",
+ "Longitude": "",
+ "Latitude": "",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Area",
+ "Id": "26522",
+ "Name": "Gatwick Airport",
+ "LocaleName": "盖特威克机场",
+ "Longitude": "",
+ "Latitude": "",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "Type": "Area",
+ "Id": "507633",
+ "Name": "Windsor",
+ "LocaleName": "温莎",
+ "Longitude": "",
+ "Latitude": "",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Area",
+ "Id": "507634",
+ "Name": "Slough",
+ "LocaleName": "斯劳",
+ "Longitude": "",
+ "Latitude": "",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Area",
+ "Id": "514784",
+ "Name": "Twickenham",
+ "LocaleName": "特威克纳姆",
+ "Longitude": "",
+ "Latitude": "",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Area",
+ "Id": "514785",
+ "Name": "Watford",
+ "LocaleName": "沃特福德",
+ "Longitude": "",
+ "Latitude": "",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Area",
+ "Id": "514786",
+ "Name": "Croydon",
+ "LocaleName": "克罗伊登",
+ "Longitude": "",
+ "Latitude": "",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Area",
+ "Id": "564240",
+ "Name": "West Kensington",
+ "LocaleName": "西肯辛顿",
+ "Longitude": "",
+ "Latitude": "",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Area",
+ "Id": "597352",
+ "Name": "Edgware",
+ "LocaleName": "埃奇韦尔",
+ "Longitude": "",
+ "Latitude": "",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ },
+ {
+ "Type": "Area",
+ "Id": "597562",
+ "Name": "Kingston upon Thames",
+ "LocaleName": "泰晤士河畔金斯顿",
+ "Longitude": "",
+ "Latitude": "",
+ "CountryCode": null,
+ "CountryName": null,
+ "CountryLocaleName": null,
+ "CityId": null,
+ "CityName": null,
+ "CityLocaleName": null
+ }
+ ],
+ "Selected": false
+ }
+ ],
+ "AccommodationTypes": {
+ "102": "船屋",
+ "103": "整间平房",
+ "105": "胶囊旅馆",
+ "106": "木屋",
+ "107": "乡村民宿",
+ "108": "家庭旅馆",
+ "109": "农家旅馆",
+ "110": "假日公园",
+ "111": "客栈",
+ "112": "小屋",
+ "113": "爱情酒店",
+ "114": "帐篷",
+ "115": "摩洛哥传统庭院住宅",
+ "120": "酒店式公寓",
+ "122": "度假别墅",
+ "131": "独栋房屋",
+ "132": "家庭旅馆",
+ "133": "民宿",
+ "134": "町屋",
+ "28": "独立别墅",
+ "29": "公寓",
+ "30": "别墅",
+ "32": "旅馆/民宿",
+ "33": "青年旅馆",
+ "34": "酒店",
+ "35": "汽车旅馆",
+ "37": "度假村",
+ "38": "日式旅馆"
+ },
+ "Facilities": {
+ "57": "健身房 ",
+ "105": "高尔夫球场(3公里范围内)",
+ "61": "水疗",
+ "31": "WiFi上网",
+ "252": "出租车服务",
+ "116": "24小时前台",
+ "124": "行李寄存",
+ "22": "代客泊车",
+ "17": "酒店/机场接送",
+ "11": "餐厅",
+ "7": "酒吧",
+ "24": "可携带宠物",
+ "83": "吸烟区",
+ "355": "停车场(附近)",
+ "357": "免费停车 ",
+ "2675": "免费使用商务区",
+ "2678": "免费洗衣服务",
+ "2532": "会议/宴会设施"
+ }
+ },
+ "RequestId": "b12d1186-2d51-4b3f-b964-520d4308a310"
+}
+# 7.酒店相关接口
+7.1.获取有效酒店编号
+项 | +说明 | +备注 | +
---|---|---|
Request URL | +https://distapi-sandbox.heytripgo.com/Accommodation/AvailableAccommodationIds | +区分测试正式环境域名 | +
Request Method | +GET | ++ |
输入参数:
+ +名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
pageIndex | +int | +是 | +第几页 | +1 | +
输出参数:
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
TotalPage | +int | +是 | +总页数 | +
TotalCount | +int | +是 | +总数据行数 | +
Data | +int[] | +否 | +酒店编号数组 | +
Response samples:
+{
+ "TotalPage": 1692,
+ "TotalCount": 169146,
+ "Data": [
+ 21321410
+ ],
+ "RequestId": "0a477b04-93c9-4bfd-9cb1-613147c0ffc5"
+}
+7.2.获取酒店房型相关静态信息
+项 | +说明 | +备注 | +
---|---|---|
Request URL | +https://distapi-sandbox.heytripgo.com/Accommodation/AccommodationsDetails | +区分测试正式环境域名 | +
Request Method | +POST | ++ |
Content-Type | +application/json | ++ |
输入参数:
+ +名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
Language | +string | +是 | +语言 | +zh-CN | +
AccommodationIds | +int[] | +是 | +酒店编号集合,最多仅可输入10个酒店编号 | +[21321410,20933682] | +
输出参数:
+** 酒店信息**
+名称 | +类型 | +是否必填 | +描述 | +备注 | ++ |
---|---|---|---|---|---|
HotelId | +int | +是 | +酒店编号 | ++ | + |
HotelName | +string | +是 | +酒店名称 | ++ | + |
LocaleName | +string | +是 | +酒店本地化名称(根据输入参数Language) | ++ | + |
CountryCode | +string | +是 | +国家编号 | ++ | + |
CityId | +string | +否 | +城市编号 | ++ | + |
Address | +string | +否 | +地址 | ++ | + |
AddressLocale | +string | +否 | +地址本地化名称 | ++ | + |
Phone | +string | +否 | +电话 | ++ | + |
Latitude | +string | +否 | +纬度 | ++ | + |
Longitude | +string | +否 | +经度 | ++ | + |
Rating | +decimal | +否 | +星级 | ++ | + |
HotelType | +string | +否 | +酒店类型 | ++ | + |
Brand | +string | +否 | +品牌 | ++ | + |
Description | +string | +否 | +描述 | ++ | + |
PostalCode | +string | +是 | +邮编 | ++ | + |
Rooms | +Room[] | +否 | +房型信息集合 | ++ | + |
HeroImg | +string | +否 | +主图地址 | ++ | + |
Highlight | +XHotelHighlight | +否 | +亮点 | ++ | + |
Urls | +Url[] | +否 | +酒店图片信息 | ++ | + |
Review | +XHotelReview | +否 | +客评 | ++ | + |
Facility | +XHotelFacility | +否 | +设施描述 | ++ | + |
Location | +XHotelLocation | +否 | +附近位置信息 | ++ | + |
Informations | +List | +否 | +酒店实用信息 | ++ | + |
Instruction | +XHotelInstruction | +否 | +酒店政策说明 | ++ | + |
SupplierType | +string | +否 | +酒店供应类型:SF(自签单体) null(普通) 默认是null | ++ | + |
SupplierMappingHotelId | +List | +否 | +酒店聚合匹配酒店id (供应商 艺龙, Agoda) | ++ | + |
输出房型(Room):
+ +名称 | +类型 | +是否必填 | +描述 | +备注 | +
---|---|---|---|---|
RoomId | +string | +是 | +房型编号 | ++ |
RoomName | +string | +否 | +房型名称 | ++ |
LocaleName | +string | +否 | +房型本地化名称 | ++ |
BedTypeDesc | +string | +否 | +床型描述 | ++ |
MaxOccupancy | +MaxOccupancy | +否 | +最大入住人数信息 | ++ |
BedRooms | +BedRoom[] | +否 | +卧室床型明细 | ++ |
Area | +string | +否 | +面积 | ++ |
Views | +string | +否 | +景观 | ++ |
Window | +int | +是 | +窗户信息 0未知 1有窗 2无窗 3部分有窗 4内窗 5封闭窗 6部分内窗 | ++ |
Floor | +string | +否 | +楼层 | ++ |
WiredBroadband | +int | +否 | +有线网络信息 0未知 1无 2免费 3收费 4部分收费 5部分有且收费 6部分有且免费 | ++ |
WirelessWideband | +int | +否 | +无线网络信息 0未知 1无 2免费 3收费 4部分收费 5部分有且收费 6部分有且免费 | ++ |
Smoking | +int | +否 | +吸烟信息 0未知 1禁烟 2部分禁烟 3可吸烟 | ++ |
BathRoomType | +int | +否 | +卫浴信息 0未知 1独立卫浴 2公共卫浴 | ++ |
Images | +List | +否 | +房型图片 | ++ |
输出最大入住人数(MaxOccupancy):
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Total | +int | +否 | +最大入住人数 | +
Children | +int | +否 | +最大入住儿童数 | +
Adults | +int | +否 | +最大入住成人数 | +
AgeCategories | +AgeCategory[] | +否 | +入住人年龄分类 | +
房型入住人数年龄分类(AgeCategory)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Name | +string | +否 | +"Adult" "Child" 有可能有些供应商分很多种类 | +
MinAge | +decimal? | +否 | +年龄最小值 | +
MaxAge | +decimal? | +否 | +年龄最大值 | +
输出卧室床型明细(BedRoom):
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Beds | +Bed[[]] | +否 | +床型,二维数组,外层是“或”关系 | +
HasBathroom | +bool | +否 | +是否有卫生间 | +
输出卧室床型(Bed):
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
BedType | +string | +否 | +床型 | +
BedSize | +string | +否 | +床尺寸 | +
Count | +int | +否 | +床数量 | +
输出亮点(Highlight):
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
LocationHighlightDesc | +string | +否 | +位置亮点描述 | +
MainHighlights | +List | +否 | +亮点条目 | +
+ | + | + | + |
输出亮点条目(MainHighlights):
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Name | +string | +否 | +名称 | +
Category | +string | +否 | +种类 | +
Tooltip | +string | +否 | +提示(可鼠标覆盖展示) | +
+ | + | + | + |
输出客评(Review)
+名称 | +类型 | +是否必填 | +描述 | ++ |
---|---|---|---|---|
Score | +decimal | +否 | +总评分 | ++ |
ReviewCount | +int | +否 | +点评数 | ++ |
ScoreDetails | +List | +否 | +客评分类明细(总评分鼠标覆盖可展示) | ++ |
Desc | +string | +否 | +描述 9-10惊艳了Exceptional 8-9棒棒哒Excellent 7-8还不错Very good 6-7一般Good 0-6评分Review score | ++ |
Summaries | +List | +否 | +客人评论 | ++ |
PositiveMentions | +List | +否 | +客人点赞分类 | ++ |
输出客评分类明细(XHotelReviewScoreDetail)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Name | +string | +否 | +名称 | +
Category | +string | +否 | +种类 cleanliness(环境和清洁度) facilities(设施) location(位置) roomComfort(客房舒适度) staffPerformance(服务)valueForMoney(性价比) | +
Score | +decimal | +否 | +分数 | +
CityAverage | +decimal | +否 | +当前城市平均标准 | +
输出客人评论(XHotelReviewSummaries)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Country | +string | +否 | +点评客人来源国家 | +
Reviewer | +string | +否 | +点评客人昵称 | +
ReviewRating | +decimal | +否 | +点评分数 | +
Desc | +string | +否 | +点评描述 | +
ReviewDate | +DateTime | +否 | +点评时间. | +
输出客人点赞分类(XHotelPositiveMention)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Name | +string | +否 | +分类名称 | +
Count | +int | +否 | +点赞次数 | +
+ | + | + | + |
输出设施描述(XHotelFacility)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Categories | +List | +否 | +设施分类 | +
Highlights | +List | +否 | +亮点设施 | +
+ | + | + | + |
输出设施分类(XHotelFacilityCategory)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Category | +string | +否 | +设施种类 | +
Name | +string | +否 | +设施种类名称 | +
Items | +List | +否 | +设施明细 | +
输出标准酒店信息-设施(XHotelFacilityItem)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Id | +string | +否 | +设施编号 | +
Name | +string | +否 | +设施名称 | +
Symbol | +string | +否 | +符号 | +
输出 附近位置信息(XHotelLocation)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
PoiScore | +decimal? | +否 | +位置评分 | +
AirportScore | +decimal? | +否 | +机场评分 | +
TransportationScore | +decimal? | +否 | +公共交通评分 | +
TopPlaces | +List | +否 | +热门地标 | +
Shops | +List | +否 | +附近商店 | +
Places | +List | +否 | +附近地标 | +
NearbyCategories | +List | +否 | +附近位置简要分类 | +
WalkablePlaces | +XHotelWalkablePlaces | +否 | +可步行抵达地点信息 | +
输出 标准酒店信息-附近位置条目(XHotelLocationItem)
+名称 | +类型 | +是否必填 | +描述 | +备注 | +
---|---|---|---|---|
Id | +string | +是 | +编号 | +无效字段 | +
Name | +string | +是 | +名称 | ++ |
Distance | +decimal? | +否 | +距离(km) | ++ |
Latitude | +decimal? | +否 | +位置纬度 | ++ |
Longitude | +decimal? | +否 | +位置经度 | ++ |
TypeName | +string | +否 | +类型 | +无效字段 | +
TypeId | +string | +否 | +类型编号 | +无效字段 | +
输出 附近位置简要分类(XHotelNearbyCategory)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Category | +string | +否 | +分类 | +
Name | +string | +否 | +名称 | +
Places | +List | +否 | +Places | +
MinDistance | +decimal? | +否 | +最近距离 | +
输出 (XHotelNearbyPlace)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Distance | +decimal? | +否 | +距离(km) | +
Latitude | +decimal? | +否 | +位置纬度 | +
Longitude | +decimal? | +否 | +位置经度 | +
Name | +string | +否 | +名称 | +
输出 可步行抵达地点信息(XHotelWalkablePlaces)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Title | +string | +否 | +标题 | +
Desc | +string | +否 | +描述 | +
Categories | +List | +否 | +分类 | +
输出 可步行抵达地点信息分类(XHotelWalkableCategory)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Name | +string | +否 | +名称 | +
Places | +List | +否 | +Places | +
输出 可步行抵达地点信息条目(XHotelWalkablePlace)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Distance | +decimal? | +否 | +距离(km) | +
Name | +string | +否 | +名称 | +
输出 酒店实用信息(XHotelInformation)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Category | +string | +否 | +种类 | +
CategoryName | +string | +否 | +种类名称 | +
Items | +List | +否 | +政策条目信息 | +
输出 酒店政策条目信息条目(XHotelInformationItem)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Id | +string | +否 | +编号 | +
Name | +string | +否 | +名称 | +
Value | +string | +否 | +值 | +
输出 酒店政策说明(XHotelInstruction)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Desc | +string | +否 | +描述 | +
Special | +string | +否 | +特殊说明 | +
FeesDesc | +string | +否 | ++ |
输出房型图片 XRoomImage
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Category | +string | +否 | +图片类型 | +
Url | +string | +是 | ++ |
+ | + | + | + |
输出聚合供应商酒店id CtripMappHotel
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
SourceSuppler | +string | +否 | +供应商名称 | +
SourceHotelId | +string | +否 | +标准酒店id | +
MappHotelId | +string | +否 | +聚合酒店id | +
MappRoomId | +string | +否 | +聚合房型id(不开放) | +
Request samples:
+{
+ "Language": "zh-CN",
+ "AccommodationIds": [
+ 21321410
+ ]
+}
+Response samples:
+{
+ "Data": {
+ "21321410": {
+ "HotelId": 21321410,
+ "HotelName": "Rosewood Guangzhou",
+ "LocaleName": "广州瑰丽酒店",
+ "CountryCode": "CN",
+ "CityId": "e2001",
+ "Address": "Floor 95, Guangzhou Zhoudafu Financial Center, No. 6 East Zhujiang Road",
+ "AddressLocale": "珠江东路6号广州周大福金融中心95层",
+ "Phone": "020-88528888",
+ "Latitude": "23.118153187",
+ "Longitude": "113.326415164",
+ "Rating": 0,
+ "HotelType": "34",
+ "Brand": "Rosewood",
+ "Description": "广州瑰丽酒店位处于新近开幕的周大福金融中心。周大福金融中心楼高 530 米,是广州崭新地标。广州瑰丽酒店矗立于繁华的天河商业区中心,地理位置优越。距离主要商业中心和知名文化及建筑地标都尽在咫尺。 瑰丽酒店精心诠释尊崇不凡品味,酒店建筑由Kohn Pedersen Fox Associates设计,成为城市新名片。垂直的服务式公寓拥有数个户外露台,平添宁静安逸氛围。酒店电梯格外引人注目,每秒 20 米的上升速度居全球首位,仿佛瞬间到达顶楼。内部设计由多伦多室内设计事务所Yabu Pushelberg担纲,于当代风格基础上融入一系列中式艺术品、建筑主题和本地材质,营造令人耳目一新的现代典雅居停。\"",
+ "PostalCode":"41140"
+ "Rooms": [
+ {
+ "RoomId": "C97nCoU0O/BeFV+hiR+kyg==",
+ "RoomName": "Deluxe Riverview King Room",
+ "LocaleName": "豪华江景大床客房",
+ "BedTypeDesc": "大床2米",
+ "MaxOccupancy": null,
+ "BedRooms": null,
+ "Area": "40-50",
+ "Views": "城景",
+ "Window": 5,
+ "Floor": "96-103",
+ "WiredBroadband": 2,
+ "WirelessWideband": 2,
+ "Smoking": 0,
+ "BathRoomType": 1
+ }
+ ],
+ "HeroImg": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAlX9vGB3ZSfZ4$LfuTdqdwsntv8zpbDaPZzNi36LZTBeA==.jpg ",
+ "Highlight": null,
+ "Urls": [
+ {
+ "Caption": "外观",
+ "Category": "5",
+ "Urls": [
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAlX9vGB3ZSfZ4$LfuTdqdwsntv8zpbDaPZzNi36LZTBeA==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAvRE1TIjYO56tFdmLL7Qhpt8pv7TFbMpURHsuyv$NBUbA==.jpg "
+ }
+ ]
+ },
+ {
+ "Caption": "客房",
+ "Category": "8",
+ "Urls": [
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqwJ7e0E5pV@ig$laUZWiK0w==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6pcmNAng6cojHuVno0nePZQ==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqhgkmqwG@q$qwjpy64mkM1Q==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6hUcd6pUNdIacuQGiRQ9cAA==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfq4zf2zeHcBgsk3Q8jCDzrWA==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6Yub4vC9oZjwreraifL9HhQ==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfq5QZuLCQr@sK8EwwG4lIQ7g==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6Jg8JbKlMiyzey29j76Tk5Q==.jpg "
+ }
+ ]
+ },
+ {
+ "Caption": "大堂/接待台",
+ "Category": "6",
+ "Urls": [
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqY9FKEz2u9YVeeWP4nWan2Q==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6KBS4N9FcPmiGCiDxq4rVOQ==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqKhd@ld0U7XsaKHqL77$lzg==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6@mVGEJwOHH9jikBDvThphA==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqaUS8ntSJYYDNe6eiQ16JRg==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6mRAwhPnj2aLunHBHgeMJag==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqdgdCNq@OHVFecKbLmNcPoQ==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB65hqO2oumw3A254JS2vKEdA==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqfpuTTIkOyklyFdKMHx6Viw==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6TJEjGmtsO@AppzkrM5uIlg==.jpg "
+ }
+ ]
+ },
+ {
+ "Caption": "休闲",
+ "Category": "2",
+ "Urls": [
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmQ8OZjnuvswnYBDpo2lhY13QcZcO81QyHBaEpV6ga9hA==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6j4rJq@vqk02SfE2O@1dXOg==.jpg "
+ }
+ ]
+ },
+ {
+ "Caption": "公共区域",
+ "Category": "11",
+ "Urls": [
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmQ8OZjnuvswnYBDpo2lhY1a39cxczv2Wwo3wmRrD9rHg==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6FYdPIHUikoAAd1jVC@ekrg==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfq7BRG6uQkvVoUGAdPGlfAtQ==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6w$etZWJ3skuYRSY8d0WNsA==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqZnmWEuD2gXnjOUSGzwYE0w==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6fH@Sl3ij405of3vqufJVhQ==.jpg "
+ }
+ ]
+ },
+ {
+ "Caption": "餐厅",
+ "Category": "1",
+ "Urls": [
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqXAGxt8cBQ4TxYwOAKhiDEA==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6w2Onvsl7kHcVcnViuOS$yQ==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqt$lnVsFU6d42axK8PsHbUA==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6rcxiggsxXLVll4guYXKuTA==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqoh3MTqc08rp@t3T4A73kZw==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB66PyQgpOhnjGW36dy3VJKHw==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqORtTNTT8$bx3cA3fe2w3@Q==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6xFq00p5eqTH9uuvTuIBR@A==.jpg "
+ }
+ ]
+ },
+ {
+ "Caption": "会议与服务",
+ "Category": "3",
+ "Urls": [
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqU6u7UZrMuBEu1KG9SkwCHw==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6yqfwvlupDTabEawV2du@FQ==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqoYbEQuse$XBnSq55sZMJiQ==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6FkEnJJu4Rg3lqRzno1MVJA==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfq8CVp766xOTrvvkdh3mjgSg==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6Wsl1zS4HTziV6@B9y6mDEg==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqnSBB8xSEUNIXhVcw3dQuHw==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6UVd$Piqp3j0fRyaFuaEnpw==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqvpdLfxuJj6aWu54irQ6z3A==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB65K8Q8ITZJoovPDCZ8xcFnA==.jpg "
+ }
+ ]
+ },
+ {
+ "Caption": "其他",
+ "Category": "10",
+ "Urls": [
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqjpVL@zigeGy3xTfuy3qPMw==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6brYeRyrHOH2C8ZIborvARg==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqSzq34bCI4@rxYm5$LboHzg==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB64@kayyQcDD84S0oGjZ8JHw==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqYhrAA9jDdj4OJaQyVWFRNg==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6d398DKHAZ1oGmtWcy8fNog==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAlX9vGB3ZSfZ4$LfuTdqdwsvAioeHVE7Kauh8ctoIK2PQ==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAvRE1TIjYO56tFdmLL7Qhptbq4eCQOq1NSV$bOLa5Jc5w==.jpg "
+ }
+ ]
+ },
+ {
+ "Caption": "周边图片",
+ "Category": "12",
+ "Urls": [
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfqk@106Ab@pDTaGpzAhlL4cQ==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB6sWu7REvQQMO34uHaT$94dQ==.jpg "
+ },
+ {
+ "Type": "Mid",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttF05@mOAmZpUGvpOkp5@IAmtoHEVXYjLKepFvwT8HZfq@Vsu@Y0Q9AFNI7X19kZHWQ==.jpg "
+ },
+ {
+ "Type": "Max",
+ "Url": "http://i.xiwantrip.com/image2/cIFi13sqeCTeEfD0RF2ttMs@dF9IufAPjBFsmBHMvAuFfD2yEyqqnqx9mk@DvVB63F6nFSZqAOf7Ya3MLDQAxg==.jpg "
+ }
+ ]
+ }
+ ],
+ "Review": {
+ "Score": 9.6,
+ "ReviewCount": 149,
+ "ScoreDetails": null,
+ "Desc": "惊艳了",
+ "Summaries": null,
+ "PositiveMentions": null
+ },
+ "Facility": {
+ "Categories": [
+ {
+ "Category": "General facilities",
+ "Name": "基础设施",
+ "Items": [
+ {
+ "Id": "31",
+ "Name": "免费wifi",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "急救包",
+ "Symbol": null
+ },
+ {
+ "Id": "11",
+ "Name": "餐厅",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "有电梯",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "净水机",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "干衣机",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "火灾报警器",
+ "Symbol": null
+ },
+ {
+ "Id": "2573",
+ "Name": "灭火器",
+ "Symbol": null
+ },
+ {
+ "Id": "2541",
+ "Name": "烟雾报警器",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "门禁系统",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "安全报警器",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "新风系统",
+ "Symbol": null
+ },
+ {
+ "Id": "83",
+ "Name": "吸烟区",
+ "Symbol": null
+ },
+ {
+ "Id": "254",
+ "Name": "无障碍通道",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "书吧",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "大堂吧",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "公共区域闭路电视监控系统",
+ "Symbol": null
+ },
+ {
+ "Id": "2532",
+ "Name": "会议厅",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "一氧化碳报警器",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "洗涤用具",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "熨斗/挂烫机",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "多功能厅",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "洗衣房",
+ "Symbol": null
+ },
+ {
+ "Id": "357",
+ "Name": "免费停车",
+ "Symbol": null
+ }
+ ]
+ },
+ {
+ "Category": "Recreation facilities",
+ "Name": "休闲设施",
+ "Items": [
+ {
+ "Id": "",
+ "Name": "KTV",
+ "Symbol": null
+ },
+ {
+ "Id": "57",
+ "Name": "健身室",
+ "Symbol": null
+ }
+ ]
+ },
+ {
+ "Category": "Service facilities",
+ "Name": "服务设施",
+ "Items": [
+ {
+ "Id": "",
+ "Name": "共享办公空间",
+ "Symbol": null
+ },
+ {
+ "Id": "118",
+ "Name": "干洗",
+ "Symbol": null
+ },
+ {
+ "Id": "2537",
+ "Name": "熨衣服务",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "叫醒服务",
+ "Symbol": null
+ },
+ {
+ "Id": "8",
+ "Name": "洗衣服务",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "保安人员",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "专职行李员",
+ "Symbol": null
+ },
+ {
+ "Id": "124",
+ "Name": "行李寄存",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "快速入住退房",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "电子身份证",
+ "Symbol": null
+ },
+ {
+ "Id": "116",
+ "Name": "24小时前台",
+ "Symbol": null
+ },
+ {
+ "Id": "249",
+ "Name": "邮政服务",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "婚宴服务",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "多语种服务",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "商务服务",
+ "Symbol": null
+ },
+ {
+ "Id": "",
+ "Name": "叫车服务",
+ "Symbol": null
+ }
+ ]
+ }
+ ],
+ "Highlights": null
+ },
+ "Location": null,
+ "Informations": null,
+ "Instruction": null,
+ "SupplierType": "",
+ "SupplierMappingHotelId": "[{\"SourceSuppler\":\"Elong\",\"SourceHotelId\":\"21922944\",\"MappHotelId\":\"18885830\",\"MappRoomId\":null},{\"SourceSuppler\":\"Agoda\",\"SourceHotelId\":\"21922944\",\"MappHotelId\":null,\"MappRoomId\":null}]"
+ }
+ },
+ "RequestId": "bda5fa6b-2ab8-4d8e-9364-9894b03deb75"
+}
+7.3.获取酒店报价
+项 | +说明 | +备注 | +
---|---|---|
Request URL | +https://distapi-sandbox.heytripgo.com/Accommodation/Availability | +区分测试正式环境域名 | +
Request Method | +POST | ++ |
Content-Type | +application/json | ++ |
输入参数:
+名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
Language | +string | +是 | +语言 | +zh-CN | +
AccommodationIds | +int[] | +是 | +酒店编号集合,目前仅支持1个酒店查询 | +[21321410] | +
CheckInDate | +Date | +是 | +入住日期 | +2024-03-15 | +
CheckOutDate | +Date | +是 | +离店日期 | +2024-03-16 | +
Nationality | +string | +否 | +国籍 | +CN | +
NumberOfAdults | +int | +是 | +入住总成人数 | +1 | +
ChildrenAges | +int[] | +否 | +入住每个儿童年龄 | +[6,8] | +
NumberOfRooms | +int | +是 | +预订房间数 | +1 | +
Currency | +string | +是 | +币种,目前仅支持人民币 | +CNY | +
输出房型(RoomPrice): +与静态数据房型一致,下面列出比静态数据多的信息
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
RatePlans | +RatePlan[] | +是 | +价格计划集合 | +
输出价格计划(RatePlan):
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
RatePlanId | +string | +是 | +价格计划编号 | +
RatePlanName | +string | +否 | +价格计划名称 | +
Available | +int | +是 | +可订状态 1可订 0不可订 | +
MealType | +int | +是 | +餐食类型 1明确数量(早中晚餐食看Breakfast Lunch Dinner 数量);2半包;3全包;4午/晚二选一;5早+ 午/晚二选一; | +
Breakfast | +int | +是 | +早餐数量 | +
Lunch | +int | +是 | +午餐数量 | +
Dinner | +int | +是 | +晚餐数量 | +
BookingRule | +BookingRule | +否 | +预订规则 | +
Cancelable | +bool | +是 | +是否可取消 | +
CancelRules | +CancelRule[] | +否 | +取消规则信息: 0 未知 1扣首日 2扣全额 3按价格多少百分比扣 4免费取消 5扣几晚 6扣多少钱 | +
PayType | +int | +是 | +付款方式 1现付 2预付 | +
Currency | +string | +否 | +币种 CNY | +
Price | +decimal | +是 | +价格 | +
OfflineFee | +decimal | +否 | +到店付费用 | +
OfflineFeeCurrency | +string | +否 | +到店付币种 CNY | +
InstantConfirm | +bool | +是 | +是否即时确认 | +
Dailys | +PlanDailyDto[] | +是 | +每日价格 | +
InvoiceType | +int | +否 | +开票方式:0 Unknown 、1 提供方开票 、2 酒店开票、3 供应商开票 | +
SpecialInvoice | +bool? | +否 | +是否提供专票: null true false | +
输出取消规则 CancelRules
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
DeductType | +int | +是 | +取消手续费类型:0 未知 1扣首日 2扣全额 3按价格多少百分比扣 4免费取消 5扣几晚 6扣多少钱 | +
Desc | +string | +否 | +描述 | +
StartTime | +DateTime | +否 | +取消规则的生效日期和时间 北京时间 | +
EndTime | +DateTime | +否 | +取消规则的结束日期和时间 北京时间 | +
StartTimeLocal | +string | +否 | +取消规则的生效日期和时间 酒店当地时间 | +
EndTimeLocal | +string | +否 | +取消规则的结束日期和时间 酒店当地时间 | +
DeductValue | +decimal | +否 | +扣款相关数值: 1.按价格多少百分比扣,DeductType为3时有值,0.5代表百分之50 ; 2.扣几晚,DeductType为5时有值,2.0代表扣两晚; 3.扣多少钱 | +
输出预订规则 BookingRule
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Desc | +string | +否 | +描述 | +
MinDays | +int | +否 | +最小连住天数,要求连住 | +
MaxDays | +int | +否 | +最大连住天数,连住限制 | +
MinAmount | +int | +否 | +最小预订房量 | +
MaxAmount | +int | +否 | +最大预订房量 | +
MinAdvHours | +int | +否 | +最小提前预订小时 以入住日24点往前推算 | +
MaxAdvHours | +int | +否 | +最大提前预订小时 以入住日24点往前推算 | +
输出每日价格:PlanDailyDto
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Date | +DateTime | +是 | +日期 | +
Price | +decimal | +是 | +价格 | +
+ | + | + | + |
Request samples:
+{
+ "Language": "zh-CN",
+ "AccommodationIds": [20933682],
+ "CheckInDate": "2024-03-20",
+ "CheckOutDate": "2024-03-21",
+ "Nationality": "CN",
+ "NumberOfAdults": 1,
+ "ChildrenAges": [],
+ "NumberOfRooms": 1,
+ "Currency": "CNY"
+}
+Response samples:
+{
+ "Data": [
+ {
+ "RatePlans": [
+ {
+ "RatePlanId": "ZKJWckyeWWbU9xDCqPOKzUkyZ58yqsqIYdGV7+shA7E=",
+ "RatePlanName": "",
+ "Available": 1,
+ "MealType": 1,
+ "Breakfast": 1,
+ "Lunch": 0,
+ "Dinner": 0,
+ "BookingRule": null,
+ "Cancelable": false,
+ "CancelRules": null,
+ "PayType": 2,
+ "Currency": "Unknown",
+ "Quantity": null,
+ "Price": 788,
+ "OfflineFee": null,
+ "OfflineFeeCurrency": null
+ }
+ ],
+ "RoomId": "jEB7EqsCEKIrYRi0NW32gGAjvdtgO6coxDr5yHYAOw4=",
+ "RoomName": "Guestroom - Mountain-View (Double bed)",
+ "LocaleName": "桃源山景大床房",
+ "BedTypeDesc": "大床",
+ "MaxOccupancy": {
+ "Total": 1,
+ "Children": 0,
+ "Adults": 1,
+ "AgeCategories": null
+ },
+ "BedRooms": null,
+ "Area": "60",
+ "Views": null,
+ "Window": 1,
+ "Floor": "5-8",
+ "WiredBroadband": 0,
+ "WirelessWideband": 0,
+ "Smoking": 0,
+ "BathRoomType": 0
+ }
+ ],
+ "RequestId": "74de720e-e4b5-4d49-b7c4-34ae890f1d36"
+}
+7.4.下单前验证报价是否可订
+项 | +说明 | +备注 | +
---|---|---|
Request URL | +https://distapi-sandbox.heytripgo.com/Accommodation/PriceCheck | +区分测试正式环境域名 | +
Request Method | +POST | ++ |
Content-Type | +application/json | ++ |
输入参数:
+名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
Language | +string | +是 | +语言 | +zh-CN | +
AccommodationId | +int | +是 | +酒店编号 | +21321410 | +
CheckInDate | +Date | +是 | +入住日期 | +2024-03-15 | +
CheckOutDate | +Date | +是 | +离店日期 | +2024-03-16 | +
Nationality | +string | +是 | +国籍 | +CN | +
NumberOfAdults | +int | +是 | +入住总成人数 | +1 | +
ChildrenAges | +int[] | +否 | +入住每个儿童年龄 | +[6,8] | +
NumberOfRooms | +int | +是 | +预订房间数 | +1 | +
Currency | +string | +是 | +币种,目前仅支持人民币 | +CNY | +
RoomId | +string | +是 | +房型编号 | ++ |
RatePlanId | +string | +是 | +价格计划编号 | ++ |
输出参数:
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Status | +string | +是 | +available可订 sold_out满房 | +
Room | +RoomPrice | +否 | +房型房价 | +
Request samples:
+{
+ "Language": "zh-CN",
+ "AccommodationId": 20933682,
+ "CheckInDate": "2024-03-20",
+ "CheckOutDate": "2024-03-21",
+ "Nationality": "CN",
+ "NumberOfAdults": 1,
+ "ChildrenAges": [],
+ "NumberOfRooms": 1,
+ "Currency": "CNY",
+ "RoomId": "OhMH1UiLbn0EsWE7bqMdNGj5pFt5Kmttn7ezLgZOZiU=",
+ "RatePlanId": "lh7If8Ji42SAtfp3HHKW/wdoWbCbSJnDW49cXI5mzA4="
+}
+Response samples:
+{
+ "Data": {
+ "Status": "available",
+ "Room": {
+ "RatePlans": [
+ {
+ "RatePlanId": "lh7If8Ji42SAtfp3HHKW/wdoWbCbSJnDW49cXI5mzA4=",
+ "RatePlanName": "",
+ "Available": 1,
+ "MealType": 1,
+ "Breakfast": 1,
+ "Lunch": 0,
+ "Dinner": 0,
+ "BookingRule": null,
+ "Cancelable": false,
+ "CancelRules": null,
+ "PayType": 2,
+ "Currency": "Unknown",
+ "Quantity": null,
+ "Price": 667,
+ "OfflineFee": null,
+ "OfflineFeeCurrency": null,
+ "InstantConfirm": false
+ }
+ ],
+ "RoomId": "OhMH1UiLbn0EsWE7bqMdNGj5pFt5Kmttn7ezLgZOZiU=",
+ "RoomName": "Standard Mountain View King Room",
+ "LocaleName": "云山山景大床房",
+ "BedTypeDesc": "大床",
+ "MaxOccupancy": {
+ "Total": 1,
+ "Children": 0,
+ "Adults": 1,
+ "AgeCategories": null
+ },
+ "BedRooms": null,
+ "Area": "39",
+ "Views": null,
+ "Window": 1,
+ "Floor": "2-8",
+ "WiredBroadband": 0,
+ "WirelessWideband": 0,
+ "Smoking": 0,
+ "BathRoomType": 0
+ }
+ },
+ "RequestId": "adbed75d-0ed8-40a0-b504-2cdad55061e7"
+}
+7.5.酒店起价查询接口
+项 | +说明 | +备注 | +
---|---|---|
Request URL | +https://distapi-sandbox.heytripgo.com/Accommodation/QuotedHotelsPrice | +区分测试正式环境域名 | +
Request Method | +Post | ++ |
Content-Type | +application/json | ++ |
输入参数:
+名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
CheckInDate | +DateTime | +是 | +入住时间 | ++ |
CheckOutDate | +DateTime | +是 | +离店时间 | ++ |
adultNum | +int | +是 | +成人人数 | ++ |
roomCount | +int | +是 | +房间数 | ++ |
childNum | +int | +否 | +儿童数 | ++ |
age | +List | +否 | +儿童年龄 | ++ |
nationality | +string | +是 | +国籍 | ++ |
hotelIds | +List | +是 | +酒店id集合(一次只能查10条) | ++ |
输出参数:
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Id | +int | +是 | +酒店id | +
Price | +decimal | +是 | +价格 | +
Currency | +string | +是 | +币种 | +
dailies | +List | +是 | +查询时间区间起价明() | +
输出参数(DailyPrice)
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
Date | +int | +是 | +日期 | +
MinPrice | +decimal | +是 | +价格 | +
Request samples:
+{
+ "CheckInDate": "2024-04-12T09:17:35.941Z",
+ "CheckOutDate": "2024-04-12T09:17:35.941Z",
+ "adultNum": 0,
+ "roomCount": 0,
+ "childNum": 0,
+ "age": [
+ 0
+ ],
+ "nationality": "string",
+ "hotelIds": [
+ 0
+ ]
+}
+Response samples:
+{
+ "Data": [
+ {
+ "Id": 20612452,
+ "Price": 171.0,
+ "Currency": "CNY"
+ },
+ {
+ "Id": 20612493,
+ "Price": 92.0,
+ "Currency": "CNY"
+ },
+ {
+ "Id": 20612438,
+ "Price": 349.0,
+ "Currency": "CNY"
+ },
+ {
+ "Id": 20612469,
+ "Price": 215.0,
+ "Currency": "CNY"
+ },
+ {
+ "Id": 20612418,
+ "Price": 126.0,
+ "Currency": "CNY"
+ }
+ ],
+ "RequestId": "3d6288bc-65c2-4b43-944b-7695b73db1c0"
+}
+7.6 增量接口
+ +项 | +说明 | +备注 | +
---|---|---|
Request URL | +https://distapi-sandbox.heytripgo.com/Accommodation/GetPriceCacheIncrement | +区分测试正式环境域名 | +
Request Method | +GET | ++ |
Content-Type | +application/json | ++ |
输入参数:
+名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
maxId | +long | +是 | +增量编号 | +1 | +
输出参数:
+名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
MaxId | +long | +是 | +增量最大编号 | +111 | +
Details | +List | +否 | +增量明细 | ++ |
输出对象:XPriceCacheIncrementDetail
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
HotelId | +string | +是 | +酒店编号 | +
CheckInDate | +DateTime? | +否 | +变更入住日期/变更价格的日期(有些供应商是指定某个日期,不含离店) | +
CheckOutDate | +DateTime? | +否 | +变更离店日期/变更价格的日期 | +
Response samples:
+
+
+8.订单相关接口
+8.1.1创建订单
+项 | +说明 | +备注 | +
---|---|---|
Request URL | +https://distapi-sandbox.heytripgo.com/Order/Create | +区分测试正式环境域名 | +
Request Method | +POST | ++ |
Content-Type | +application/json | ++ |
1.下单前建议先验单获知最新准确的价格,但是这个步骤不是必须的; +2.TotalSalePrice 你的销售总价,内部下单前根据TotalSalePrice是否大于即将下单的价格,如果是亏损的会拦截下单
+输入参数:
+名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
Language | +string | +是 | +语言 | +zh-CN | +
AccommodationId | +int | +是 | +酒店编号 | +21321410 | +
CheckInDate | +Date | +是 | +入住日期 | +2024-03-15 | +
CheckOutDate | +Date | +是 | +离店日期 | +2024-03-16 | +
Nationality | +string | +否 | +国籍 | +CN | +
NumberOfAdults | +int | +是 | +入住总成人数 | +1 | +
ChildrenAges | +int[] | +否 | +入住每个儿童年龄 | +[6,8] | +
NumberOfRooms | +int | +是 | +预订房间数 | +1 | +
Currency | +string | +是 | +币种,目前仅支持人民币 | +CNY | +
RoomId | +string | +是 | +房型编号 | ++ |
RatePlanId | +string | +是 | +价格计划编号 | ++ |
TotalSalePrice | +decimal | +是 | +你的销售价格 | ++ |
ArrivalTime | +string | +否 | +预计到店时间,格式:HH:mm | ++ |
SpecialRequest | +string | +否 | +特殊要求 | ++ |
RoomGuests | +RoomGuest[] | +是 | +房间客人信息 | ++ |
ContactInfo | +ContactInfo | +是 | +联系人信息 | ++ |
DistributorOrderId | +string | +是 | +分销商单号 | ++ |
输入房间客人信息(RoomGuest):
+名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
RoomNo | +int | +是 | +入住人所属房间序号,从1开始计数 | +1 | +
GuestInfos | +GuestInfo[] | +是 | +客人信息 | ++ |
Nationality | +string | +否 | +国籍 | +CN | +
NumberOfAdults | +int | +是 | +每个房间入住人数(每个房间入住人数之和因与入住总人数一致) | +1 | +
ChildrenAges | +int[] | +否 | +入住每个儿童年龄 | +[6,8] | +
输入客人信息(GuestInfo):
+名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
IsAdult | +bool | +是 | +是否成人 | ++ |
LastName | +string | +是 | +姓 | ++ |
FirstName | +string | +是 | +名 | ++ |
输入联系人信息(ContactInfo):
+名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
LastName | +string | +是 | +姓 | ++ |
FirstName | +string | +是 | +名 | ++ |
AreaCode | +string | +否 | +电话区号 | ++ |
Phone | +string | +否 | +电话 | ++ |
string | +否 | +邮箱 | ++ |
输出参数:
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
BookingSuccess | +bool | +是 | +是否下单成功 | +
OrderId | +string | +是 | +订单号 | +
Currency | +string | +是 | +币种,目前仅支持人民币 | +
Message | +string | +否 | +信息 | +
Request samples:
+{
+ "Language": "zh-CN",
+ "Currency": "CNY",
+ "TotalSalePrice": 1722,
+ "AccommodationId": 100428,
+ "RoomId": "agE/zkUstxBkBGUalOAvqwG+4eSCLCD1bTEbt8AEY7M=",
+ "RatePlanId": "M2+KglLUDLqcVhYPgsZvjUhmLmRI6GQVX2v8lSDvmRo=",
+ "NumberOfAdults": 2,
+ "ChildrenAges": [
+
+ ],
+ "CheckInDate": "2024-03-28",
+ "CheckOutDate": "2024-03-29",
+ "NumberOfRooms": 1,
+ "RoomGuests": [
+ {
+ "RoomNo": 0,
+ "GuestInfos": [
+ {
+ "IsAdult": true,
+ "LastName": "ZHANG",
+ "FirstName": "SAN"
+ },
+ {
+ "IsAdult": true,
+ "LastName": "LI",
+ "FirstName": "DAN"
+ }
+
+ ],
+ "Nationality": "CN",
+ "NumberOfAdults": 2,
+ "ChildrenAges": [
+
+ ]
+ }
+ ],
+ "ContactInfo": {
+ "FirstName": "ZHANG",
+ "LastName": "SAN",
+ "AreaCode": "",
+ "Phone": "666666",
+ "Email": ""
+ },
+ "ArrivalTime": "15:30",
+ "SpecialRequest": "",
+ "Nationality": "CN",
+ "DistributorOrderId": "10000666677755"
+}
+Response samples:
+{
+ "Data": {
+ "OrderId": "240314175651730069",
+ "Currency": "CNY",
+ "BookingSuccess": true,
+ "Message": "Order reservation successful"
+ },
+ "RequestId": "c45accfb-580e-4cdc-a735-5dc9859ffa7a"
+}
+8.1.2取消订单
+项 | +说明 | +备注 | +
---|---|---|
Request URL | +https://distapi-sandbox.heytripgo.com/Order/Cancel | +区分测试正式环境域名 | +
Request Method | +POST | ++ |
Content-Type | +application/json | ++ |
输入参数:
+名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
OrderId | +string | +是 | +订单号 | ++ |
CancelReason | +string | +是 | +取消原因 | ++ |
输出参数:
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
OrderId | +string | +是 | +订单号 | +
CancelSuccess | +bool | +是 | +是否取消成功 | +
Request samples:
+{
+ "OrderId": "240314175651730069",
+ "CancelReason": "测试"
+}
+Response samples:
+{
+ "Data": {
+ "OrderId": "240314175651730069",
+ "CancelSuccess": true
+ },
+ "RequestId": "5c0d4a80-61e0-479f-855d-5c42f223ddfb"
+}
+8.1.3查询订单
+项 | +说明 | +备注 | +
---|---|---|
Request URL | +https://distapi-sandbox.heytripgo.com/Order/Preview | +区分测试正式环境域名 | +
Request Method | +GET | ++ |
输入参数:
+名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
OrderId | +string | +否 | +订单号 | +240314175651730069 | +
distributorOrderId | +string | +否 | +分销商订单单号 | +JD18DD70FC77358000 (分销单号和订单号两者必须有一个有值) | +
Language | +string | +是 | +语言 | +zh-CN | +
+ | + | + | + | + |
输出参数:
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
OrderId | +string | +是 | +订单号 | +
OrderStatus | +int | +是 | +订单状态,1待支付、3预定中(正在处理)、6已确认、22预定失败、2已取消 | +
ConfirmationNumber | +string | +否 | +酒店确认号 | +
SpecialRequest | +string | +否 | +特殊要求 | +
SettlementStatus | +int | +否 | +结算状态,0未结算、1已结算 | +
InvoiceStatus | +int | +否 | +发票状态,0未申请、1审核中、2已寄出 | +
OrderTime | +string | +是 | +预定日期 | +
CheckOutDate | +string | +是 | +入住日期 | +
RoomCount | +int | +是 | +预定房间数 | +
Breakfast | +int | +是 | +早餐数 | +
Nationality | +string | +否 | +国籍 | +
ContactName | +string | +否 | +联系人 | +
ContactPhone | +string | +否 | +联系电话 | +
ContactEmail | +string | +否 | +联系邮箱 | +
Currency | +string | +否 | +币种 | +
TotalSalePrice | +decimal | +是 | +总卖价 | +
OfflineFee | +decimal | +否 | +到店付金额 | +
OfflineFeeCurrency | +decimal | +否 | +到店付币种 | +
IsCancelable | +bool | +是 | +是否可取消 | +
CancelableDesc | +string | +否 | +是否可取消描述 | +
IsPay | +bool | +是 | +是否已支付 | +
IsRefund | +bool | +是 | +是否已退款 | +
GuestInfos | +GuestInfo[] | +是 | +客人信息 | +
RoomInfo | +OrderRoom | +否 | +房间 | +
HotelInfo | +OrderHotel | +否 | +酒店信息 | +
输出房间信息(OrderRoom):
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
RoomName | +string | +否 | +房型名 | +
BedType | +string | +否 | +床型名 | +
Window | +int | +否 | +窗 | +
Breakfast | +int | +否 | +早餐数 | +
输出酒店信息(OrderHotel):
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
HotelId | +int | +否 | +酒店编号 | +
CountryCode | +string | +否 | +国家编号 | +
Country | +string | +否 | +国家 | +
City | +string | +否 | +城市 | +
HotelName | +string | +否 | +酒店名称 | +
HotelNameEn | +string | +否 | +酒店名称英文 | +
Address | +string | +否 | +地址 | +
Response samples:
+{
+ "Data": {
+ "OrderId": "240314175651730069",
+ "OrderStatus": 6,
+ "OrderTime": "2024/03/14 17:57:03",
+ "CheckInDate": "2024/03/28",
+ "CheckOutDate": "2024/03/29",
+ "RoomCount": 1,
+ "Breakfast": 0,
+ "Nationality": "CN",
+ "ContactName": "SAN/ZHANG",
+ "ContactPhone": "666666",
+ "ContactEmail": "",
+ "ConfirmationNumber": null,
+ "SettlementStatus": 0,
+ "InvoicingStatus": 0,
+ "Currency": "CNY",
+ "TotalSalePrice": 1722,
+ "OfflineFee": 0,
+ "OfflineFeeCurrency": "Unknown",
+ "RoomGuests": [
+ {
+ "RoomNo": 0,
+ "GuestInfos": [
+ {
+ "IsAdult": true,
+ "LastName": "ZHANG",
+ "FirstName": "SAN"
+ },
+ {
+ "IsAdult": true,
+ "LastName": "LI",
+ "FirstName": "DAN"
+ }
+ ],
+ "Nationality": "CN",
+ "NumberOfAdults": 2,
+ "NumberOfChildren": 0,
+ "ChildrenAges": []
+ }
+ ],
+ "DailyPrices": [
+ {
+ "Date": "2024/03/28",
+ "SalePrice": 1722,
+ "Breakfast": 0
+ }
+ ],
+ "IsCancelable": false,
+ "CancelableDesc": "<font color='#333333'>不可取消</font>",
+ "CancelRuleDescs": [
+ "不可取消或修改"
+ ],
+ "SpecialRequest": "",
+ "HotelInfo": {
+ "HotelId": 100428,
+ "CountryCode": null,
+ "Country": "泰国",
+ "City": "甲米",
+ "HotelName": "贝壳海",
+ "HotelNameEn": "The ShellSea Krabi I Luxury Beach Resort & Pool Villas",
+ "HotelStar": 5,
+ "Address": "999 Moo 6 Saithai ",
+ "HotelTel": "66-75-819519",
+ "ZipCode": "",
+ "HotelImg": null
+ },
+ "RoomInfo": {
+ "RoomName": "贝壳海海洋间",
+ "BedType": "2 张单人床 或 1 张特大床",
+ "Window": 0,
+ "Breakfast": 2
+ },
+ "IsPay": true,
+ "IsRefund": false
+ },
+ "RequestId": "ec13fb93-8d0b-4a9f-a6b2-f72305c28803"
+}
+8.1.4 新增热销酒店Id获取接口
+项 | +说明 | +备注 | +
---|---|---|
Request URL | +https://distapi-sandbox.heytripgo.com/Accommodation/GetHotelIncrement | +区分测试正式环境域名 | +
Request Method | +GET | ++ |
输入参数:
+名称 | +类型 | +是否必填 | +描述 | +示例值 | +
---|---|---|---|---|
searchdate | +string | +是 | +酒店新增时间 | +2025-01-01 | +
pageIndex | +int | +是 | +页数 | +1 (每次只能查1000条数据) | +
输出参数:
+名称 | +类型 | +是否必填 | +描述 | +
---|---|---|---|
TotalPage | +int | +是 | +总页数 | +
TotalCount | +int | +是 | +总条数 | +
Data | +int[] | +是 | +数据集合 | +
+{
+ "TotalPage": 30,
+ "TotalCount": 2908,
+ "Data": [
+ 20004698,
+ 20007688,
+ 20008011,
+ 20010730,
+ 20013077,
+ 20013395,
+ 20015931,
+ 20017343,
+ 20018624,
+ 20018634,
+ 20018846,
+ 20019861,
+ 20020470,
+ 20021865,
+ 20021976,
+ 20024710,
+ 20026209,
+ 20026368,
+ 20027499,
+ 20027501,
+ 20027892,
+ 20028564,
+ 20031982,
+ 20033659,
+ 20035827,
+ 20039870,
+ 20040316,
+ 20040622,
+ 20041178,
+ 20041261,
+ 20041818,
+ 20042749,
+ 20043263,
+ 20043529,
+ 20043711,
+ 20044248,
+ 20045197,
+ 20045310,
+ 20045400,
+ 20045524,
+ 20046125,
+ 20048414,
+ 20049080,
+ 20049630,
+ 20049828,
+ 20052428,
+ 20052669,
+ 20054870,
+ 20056429,
+ 20056924,
+ 20057147,
+ 20058049,
+ 20058781,
+ 20058783,
+ 20059660,
+ 20059875,
+ 20060650,
+ 20060822,
+ 20061459,
+ 20061654,
+ 20061802,
+ 20062267,
+ 20062749,
+ 20064330,
+ 20066664,
+ 20067494,
+ 20068830,
+ 20070207,
+ 20070397,
+ 20071455,
+ 20071534,
+ 20074607,
+ 20081836,
+ 20082805,
+ 20083580,
+ 20083674,
+ 20085498,
+ 20086902,
+ 20087166,
+ 20089270,
+ 20090340,
+ 20094457,
+ 20094810,
+ 20099909,
+ 20101153,
+ 20101539,
+ 20101677,
+ 20101810,
+ 20104582,
+ 20105245,
+ 20108478,
+ 20108639,
+ 20109605,
+ 20112740,
+ 20113047,
+ 20113372,
+ 20115150,
+ 20115426,
+ 20116063,
+ 20121377
+ ],
+ "RequestId": "379e7cd2-77ce-40e9-ae85-7828f479485c"
+}
+