根据「2.6 预估价格」返回的预估key(priceKey)查询该次预估对应城市、车型、订单类型的分时段计费计价规则,用于在下单前向用户展示计价规则明细。
与「2.17 查询分时段计费规则」的区别:2.17 需要调用方自行传入 city_code、car_type、order_type 等维度;本接口直接复用预估key,计价维度由服务端从预估缓存中还原(城市、车型、订单类型、企业、起点经纬度),可避免调用方传参与预估结果不一致。
注意:
1、本接口查询的是当前生效的计价规则,不是下单那一刻的预估快照,规则被调整后再次查询可能得到不同结果。
2、estimateKey 有时效(见 2.6 中 priceKey 的有效期说明),过期或传入无效 key 时 data 为空,此时请重新调用预估接口获取新的 key,不要仅凭外层 code 判断是否取到了规则。
3、金额单位统一为分,接口不做元/分换算,展示给用户时请自行除以 100。
4、高速费、路桥费、停车费、其他费用按行驶过程中实际产生费用收取;上车和下车非同一城市,将收取两倍去程路桥费、高速费(同 remark 字段文案)。
请求地址: /v2/common/queryMeterRuleByEstimateKey
沙箱API ID: 493(沙箱联调用 cop-cli 开通权限时传入 --api-id)
服务协议: HTTP/GET
请求参数:
| 参数名称 | 类型 | 必选 | 说明 |
|---|---|---|---|
| client_id | string | Y | 申请时的client_id |
| timestamp | long | Y | 时间戳 |
| sign | string | Y | 签名,参照《1.3 签名说明》 |
| estimateKey | string | Y | 预估key,即「2.6 预估价格」返回的 priceKey(多车型场景取 service_type_price 数组中对应车型的 estimateKey) |
响应data参数:
| 参数名 | 类型 | 必有 | 说明 |
|---|---|---|---|
| cityCode | string | Y | 城市编码,如成都 028 |
| carTypeCode | int | Y | 服务车型code:2 惠选(新能源);3 舒适型;4 豪华型;5 商务型;7 优选;14 智能大白车 |
| carTypeDesc | string | Y | 车型描述,例如“惠选” |
| startPrice.basePrice | int | Y | 起步价格,单位分 |
| startPrice.desc | string | Y | 描述,如“订单起步价” |
| startPrice.startIncludeKm | double | Y | 起步包含的公里数 |
| startPrice.startIncludeMinute | int | Y | 起步包含的分钟数 |
| kmPrice.basePrice | int | Y | 里程费单价,单位分/公里 |
| kmPrice.desc | string | Y | 里程费描述,如“路长费用” |
| timePrice.basePrice | int | Y | 时长费单价,单位分/分钟 |
| timePrice.desc | string | Y | 时长费描述 |
| longWay.basePrice | int | Y | 长途费单价,单位分/公里 |
| longWay.desc | string | Y | 长途费描述,如“订单长途费用” |
| longWay.longWayStart | int | Y | 长途计费起点,单位:km |
| longLongWay.basePrice | int | N | 超长途费单价,单位分/公里,未配置超长途规则时不返回 |
| longLongWay.desc | string | N | 超长途费描述,如“订单超长长途费用” |
| longLongWay.longLongWayStart | int | N | 超长途计费起点,单位:km |
| nightFee.nightStart | string | Y | 夜间起始时间 "HH:mm:ss" |
| nightFee.nightEnd | string | Y | 夜间终止时间 "HH:mm:ss" |
| nightFee.nightIncludeKm | double | Y | 夜间包含的公里数 |
| nightFee.basePrice | int | Y | 夜间起步费,单位分 |
| nightFee.nightPrice | int | Y | 夜间每公里价格,单位分 |
| nightFee.desc | string | Y | 夜间费描述,如“夜间费用” |
| timeSlotFeeVoList.startTime | string | Y | 开始时段,格式为:HH:MM |
| timeSlotFeeVoList.endTime | string | Y | 结束时段,格式为:HH:MM |
| timeSlotFeeVoList.startPrice | int | Y | 该时段起步价,单位分 |
| timeSlotFeeVoList.startIncludeKm | double | Y | 该时段起步里程 |
| timeSlotFeeVoList.startIncludeMinute | int | Y | 该时段起步时长 |
| timeSlotFeeVoList.kmPrice | int | Y | 该时段里程价,单位分/公里 |
| timeSlotFeeVoList.timePrice | int | Y | 该时段时长价,单位分/分钟 |
| timeSlotFeeVoList.holidayType | int | Y | 该时段适用的日期类型:0 工作日;1 周末;2 节假日 |
| remark | string | Y | 计费备注说明 |
| festivalFeeVo | object | N | 节日服务费,城市未配置节日规则时不返回 |
| crossCityFeeVO | object | N | 跨城费,未配置跨城规则时不返回 |
| customizedCarSelectFee | object | N | 选车费,未配置选车费规则时不返回 |
结果示例:
{
"code": 200,
"success": true,
"data": {
"cityCode": "028",
"carTypeCode": 2,
"carTypeDesc": "惠选",
"startPrice": {
"basePrice": 1650,
"desc": "订单起步价",
"startIncludeKm": 3.7,
"startIncludeMinute": 10
},
"kmPrice": {
"basePrice": 160,
"desc": "路长费用"
},
"timePrice": {
"basePrice": 35,
"desc": "时间费用"
},
"longWay": {
"basePrice": 32,
"desc": "订单长途费用",
"longWayStart": 18
},
"longLongWay": {
"basePrice": 42,
"desc": "订单超长长途费用",
"longLongWayStart": 32
},
"nightFee": {
"basePrice": 0,
"desc": "夜间费用",
"nightStart": "23:00:00",
"nightEnd": "06:59:00",
"nightIncludeKm": 0.0,
"nightPrice": 100
},
"timeSlotFeeVoList": [
{
"startTime": "00:00",
"endTime": "06:59",
"startPrice": 1258,
"startIncludeKm": 3.7,
"startIncludeMinute": 12,
"kmPrice": 178,
"timePrice": 25,
"holidayType": 0
},
{
"startTime": "07:00",
"endTime": "08:59",
"startPrice": 1260,
"startIncludeKm": 3.7,
"startIncludeMinute": 12,
"kmPrice": 150,
"timePrice": 35,
"holidayType": 0
}
// 其余时段按实际返回,全天通常 12 个左右分段
],
"remark": "高速费、路桥费、停车费、其他费用按行驶过程中实际产生费用收取;上车和下车非同一城市,将收取两倍去程路桥费、高速费"
}
}
estimateKey 为空或已过期:
服务端不再返回计价规则,data 为空,调用方须判空后重新预估:
{
"code": 200,
"success": true,
"data": null
}
其余通用错误码(签名错误、时间戳过期、IP 未加白、无该接口权限等)请参照《1.6 错误码说明》。