查询产品接口
更新时间: 2022-11-06 必须接入
在线调试(沙箱环境)
接口概述
1、该接口用来向供应商询价,供应商应返回可提供的车型以及对应的基础报价。
2、性能要求:建议在500ms以内返回信息,最长不超过1000ms。除去网络因素,建议自身系统的处理时间控制在150ms以内。以上衡量标准为10分钟压力测试,询价频率500ms/次。
请求地址
地址格式:
{Domain}/{Channel}/productquery/2.0/{timeStamp}/{sign}
请求内容
QueryProductRequest
参数 |
类型 |
必传 |
描述 |
示例 |
备注 |
categoryCode |
String |
是 |
服务类型 |
airport-pickup |
服务类型 |
fromType |
Integer |
是 |
渠道来源 |
1 |
1-携程主流程;2-携程机票;3-携程商旅;4-携程商旅MICE |
duseLocation |
GeoDTO |
是 |
出发地址 |
|
|
auseLocation |
GeoDTO |
是 |
到达地址 |
|
|
useTime |
String |
是 |
用车时间 |
2020-08-28 14:46,格式为yyyy-MM-dd HH:mm |
时间为当地时间;注1:打车场景下仅预约单有值 |
fixedLocation |
FixedLocationDTO |
否 |
机场/火车/高铁站信息 |
|
注1:仅接送机/站场景下有值 |
flightNumber |
String |
否 |
航班号 |
|
|
departDelayTime |
Integer |
否 |
航班到达后延迟用车时间 |
20 |
单位:分钟;注1:仅接机场景下有值 |
language |
String |
是 |
语言 |
zh-CN |
用户下单站点语言,为空则为中文,请优先以该语言提供服务。 站点语言列表 |
vehicleTypeList |
List<Long> |
否 |
车型ID列表 |
117,118,119 |
注1:为空表示全部 |
priceMode |
Integer |
否 |
计价模式 |
|
0-普通计费 1-一口价 |
discountCodeList |
List<String> |
否 |
与携程方定义的活动代码 |
|
如有需求可联系携程商务 |
companyCode |
String |
否 |
第三方公司代码 |
|
用来识别企业客户,如有需求可联系携程商务 |
sceneId |
Integer |
否 |
订单场景 |
0 |
0-普通场景,1-特惠联盟 |
estimation |
EstimationStandardDTO |
否 |
预估信息 |
|
注1:如需使用请提前和产品联系,预估数据关乎报价准确性,建议自行从图商获取 |
serviceProviderId |
Long |
否 |
服务商ID |
1000000 |
用于多服务商接入场景,需要的供应商请联系我方技术添加 |
GeoDTO
参数 |
类型 |
必传 |
描述 |
示例 |
备注 |
address |
String |
是 |
地址 |
携程旅行网(新总部) |
POI名称 |
detailAddress |
String |
否 |
详细地址 |
上海市-长宁区-金钟路968号凌空SOHO16号楼 |
POI详细地址 |
longitude |
BigDecimal |
是 |
经度 |
121.351145 |
精确到小数点后6位,不足6位补0 |
latitude |
BigDecimal |
是 |
纬度 |
31.221373 |
精确到小数点后6位,不足6位补0 |
geoType |
String |
是 |
坐标系类型 |
GCJ02 |
GCJ02;WGS84 |
poiCode |
String |
否 |
携程地址ID信息 |
|
|
cityId |
long |
是 |
城市Id |
258 |
城市ID列表 |
cityName |
String |
是 |
城市名称 |
福州 |
城市ID列表 |
FixedLocationDTO
参数 |
类型 |
必传 |
描述 |
示例 |
备注 |
fixedCode |
String |
是 |
机场三字码/火车站code |
FOC |
注2 |
fixedLocationName |
String |
是 |
机场名称/火车站名称 |
长乐国际机场 |
注3 |
cityId |
String |
是 |
城市Id |
258 |
城市ID列表 |
cityName |
String |
是 |
城市名称 |
福州 |
城市ID列表 |
注
2.机场使用IATA代码,火车站为携程内部代码,如需要请线下联系携程商务。
3.携程在传机场地址时通常会将机场与具体的航站楼传给供应商,此时经纬度为具体航站楼的经纬度,方便供应商进行报价和接驳。有极小概率拿不到具体的航站楼数据,此时接口会传递机场经纬度,需要供应商自行兼容。如果不接受无航站楼报价,请联系技术同学,屏蔽无航站楼报价。
EstimationStandardDTO
参数 |
类型 |
必传 |
描述 |
示例 |
备注 |
estimateDistance |
Integer |
是 |
预估里程 |
16000 |
单位:米 |
estimateTime |
Integer |
是 |
预估时间 |
1200 |
单位:秒 |
注
预估里程和时间仅供参考
返回内容
QueryProductResponse
参数 |
类型 |
必传 |
描述 |
示例 |
备注 |
priceMark |
String |
是 |
价格标签 |
B00AABFF7DEA0ABD |
注4 |
currency |
String |
是 |
币种 |
CNY |
可选的为USD/CNY/EUR/JPY |
queryResultList |
List<ShoppingQueryProductDTO> |
是 |
价格信息 |
|
|
msgCode |
String |
是 |
响应码 |
OK |
响应码 |
message |
String |
否 |
响应详情 |
成功 |
响应码 |
注
1、当下单时的起终点、用车时间参数与查询产品时的请求参数完全一致时,请保留该次询价请求的日志,便于线上排障,至少保留2小时。
2、前端未展示报价的原因有多种,请供应商先行查看查价日志处理,如果仍然定位为携程侧的问题,请联系商务或产品解决。
用车开放平台日志系统:https://vbooking.ctrip.com/carwork/ota/logSystem
参数 |
类型 |
必传 |
描述 |
示例 |
备注 |
vehicleType |
Long |
是 |
车型 |
117 |
车型ID列表 |
price |
BigDecimal |
是 |
价格 |
50 |
单位:元,注1:此价格不含附加服务 |
originPrice |
BigDecimal |
否 |
原始价格 |
50 |
单位:元,注1:仅当内部有优惠活动时需要传值 |
addServices |
List<AddServiceDTO> |
否 |
附加服务 |
|
司机语言必传,其他可选 |
estimation |
EstimationStandardDTO |
否 |
预估信息 |
|
注1:打车场景下必填 |
feeItems |
List<FeeItemDTO> |
否 |
费用明细 |
|
注1:打车场景下必填 |
AddServiceDTO
参数 |
类型 |
必传 |
描述 |
示例 |
备注 |
vendorAddServiceCode |
String |
是 |
附加服务码 |
DR-ZH |
附加服务码 |
maxCount |
Integer |
是 |
最大数量 |
1 |
|
FeeItemDTO
参数 |
类型 |
必传 |
描述 |
示例 |
备注 |
code |
String |
是 |
费用编码 |
|
费用编码 |
name |
String |
是 |
费用名称 |
|
|
amount |
BigDecimal |
是 |
费用金额 |
|
注1:折扣项的费用金额应该是负数,如优惠金额8元,此处应返回 -8 |
discount |
Boolean |
是 |
是否属于折扣/优惠项 |
|
注1:仅在费用金额为负数的场景下返回true |
请求示例
{
"categoryCode": "airport-dropoff",
"duseLocation": {
"address": "清华大学",
"detailAddress": "海淀区 双清路30号",
"longitude": 116.32676694616,
"latitude": 40.003909840453,
"geoType": "GCJ02"
},
"auseLocation": {
"address": "首都国际机场",
"detailAddress": "首都国际机场",
"longitude": 116.588057,
"latitude": 40.080519,
"geoType": "GCJ02"
},
"useTime": "2020-10-29 18:26",
"fixedLocation": {
"fixedCode": "PEK",
"fixedLocationName": "首都国际机场",
"cityId": "1",
"cityName": "北京"
},
"fromType": 1
}
响应示例
{
"msgCode": "OK",
"message": "成功",
"priceMark": "B3730C27FE83FC8B",
"currency":"CNY",
"queryResultList": [
{
"price": 195,
"vehicleType": 118,
"addServices": [
{
"maxCount": 1,
"vendorAddServiceCode": "DR-ZH"
}
]
},
{
"price": 268,
"vehicleType": 125,
"addServices": [
{
"maxCount": 1,
"vendorAddServiceCode": "DR-ZH"
}
]
},
{
"price": 278,
"vehicleType": 129,
"addServices": [
{
"maxCount": 1,
"vendorAddServiceCode": "DR-ZH"
}
]
},
{
"price": 536,
"vehicleType": 131,
"addServices": [
{
"maxCount": 1,
"vendorAddServiceCode": "DR-ZH"
}
]
},
{
"price": 692,
"vehicleType": 135,
"addServices": [
{
"maxCount": 1,
"vendorAddServiceCode": "DR-ZH"
}
]
},
{
"price": 854,
"vehicleType": 140,
"addServices": [
{
"maxCount": 1,
"vendorAddServiceCode": "DR-ZH"
}
]
}
]
}
异常示例
{
"msgCode": "NO_TIMESERVICE",
"message": "提前预定时间过短",
"priceMark": "",
"currency":"",
"queryResultList": []
}