产品简介
长途距离测量矩阵(M-N)服务,是物流1-N、N-1服务的高级服务,服务主要适配物流全局最优调度场景, 大批量长距离车货仓调度线路信息,进而计算最优全局调度组合。开发者可以在此数据的基础上,结合自己的业务数据,进行最优路径的计算和调度。
该服务批量计算了从M个起点,到N个终点的所有组合距离矩阵,支持填写车辆信息,规避限行/限重/限高/限宽,支持货车/客车行车距离距离,返回了通行时间、里程、通行费用三个主要参数。单次请求M*N的乘积不超过200。
该服务由于运算量较大,是个异步接口,分为创建任务服务、查询任务服务两个接口。一般情况下,计算结果可以在数秒内完成。
接口文档
1. 创建任务
API URL
特别注意:该接口是物流API服务收费接口,您如果申请试用或者正式应用都请通过工单系统提交商务合作类工单进行沟通。
请求:
参数名
| 含义
| 规则说明
| 是否必须
| 缺省值
|
key
| 请求服务权限标识
| 用户在高德地图官网申请Web服务API类型KEY
| 必填
| 无
|
id
| 任务请求的唯一标识
| 确保输入ID的唯一性, 推荐使用请求订单ID(string)
| 非必填
| 无
|
origins
| 出发点
| lng,lat(经度在前;","分割;纬度在后)例如:117.500244,40.417801 经纬度建议小数点后不超过6位;
格式为x,y。格式为x,y ; x,y ; x,y.....。经纬度之间通过“;”分割;起终点乘积最多支持200(例:10个起点&20个终点)
| 必填
| 无
(小数点后大于6位, 进行截断处理)
|
destinations
| 目的地
| lng,lat(经度在前;","分割;纬度在后)例如:117.500244,40.417801 经纬度建议小数点后不超过6位;
格式为x,y ; x,y ; x,y.....。经纬度之间通过“;”分割;起终点乘积最多支持200(例:10个起点&20个终点)
| 必填
| 无
(小数点后大于6位, 进行截断处理)
|
Strategy
| 路线规划策略
(新策略标识,与货车路线规划truck接口保持一致。)
| 取值定义(1-9与货车路线规划接口的Strategy保持一致): 1:躲避拥堵 2:不走高速 3:避免收费 4:躲避拥堵+不走高速 5:避免收费+不走高速 6:躲避拥堵+避免收费 7:躲避拥堵+避免收费+不走高速 8:高速优先 9:躲避拥堵+高速优先 11:默认策略(综合最优) 20:距离优先 21:距离优先,高速优先 22:距离优先,不走高速 23:距离优先,避免收费 24. 距离优先,不走高速且避免收费;
| 可选
| 11
|
vehicle
| 车辆信息
| 接口说明传入vehicle才会有效果; vehicle包含车辆的 1. 车辆类型(type), 默认货车, 2. 车牌号(plate),默认为空 3. 车辆大小(size),默认轻型车, 小客车类型不生效, 4. 车辆长度(length), 小客车类型不生效 5. 车辆高度(height),小客车类型不生效 6. 车辆宽度(width),小客车类型不生效, 7. 车辆总重(weight),小客车类型不生效, 8. 车辆载重(load),小客车类型不生效, 9. 车辆轴数(axis),小客车类型不生效 以上内容的vaule标准可查看附录1
| 非必传
|
|
restriction
| 规避限行
| 仅针对白名单用户生效, 如果非白名单用户 传入此字段, 统一按照不限行处理; 若使用此字段需要进行申请
是否开启规避限行
0.不规避限行(默认)
1.规避限行
| 可选
| 0
|
请求示例
curl -X POST \
'https://tsapi.amap.com/v1/logistics/route/longmatrix/add?key=yourkey' \
-H 'content-type: application/json' \
-d '{
"origins":"121.487241,31.229493;121.487242,31.229493",
"destinations":"121.47471,31.234484;121.460119,31.241676",
"newStrategy":"11",
"vehicle":{
"axis":"2",
"plate":"苏A88V12",
"type":"1",
"size":"1",
"length":"5.95",
"height":"3.35",
"width":"2.35",
"weight":"4.495",
"load":"1.5"
}
}'
返回:
参数
| 说明
|
errcode
| 错误码
|
errmsg
| 错误描述
|
errdetail
| 错误详情
|
data
|
|
-jobId
| 返回计算任务ID, 通过此ID进行查询相关计算结果
|
返回示例
add接口返回参数,内容在data字段中,定义jobId,格式:
{
"errcode":"",
"errmsg":"",
"errdetail":"",
"data":{
"jobId":"12345"
}
}
2. 查询任务
API URL
请求
返回
参数
| 说明
|
errcode
| 错误码
|
errmsg
| 错误描述
|
errdetail
| 错误详情
|
data
|
|
/progress
| (-1)-100 来表示进度,状态为100的时候返回data结果
1. 进行中任务: 返回进度状态
2. 完成任务:
a. 「未处理」一个都没完成: 返回计算失败
b. 「超时」完成了一部分: 返回progress=-1(代表处理超时), 能够下载
c. 「完成」都完成: 返回progress=100, 能够下载
|
/resultAddress
| 返回处理之后结果地址, 具体内容参见下方字段
|
返回文件内容:
oss文件存储的是json数组,每个数组元素包括以下字段:
参数
| 类型
| 说明
|
number
| int
| 根据输入顺序的起点/终点对排序,从1开始。
|
origin
| string
| lng,lat(经度在前;","分割;纬度在后)直接返回用户输入内容
格式为x,y。
|
destination
| string
| lng,lat(经度在前;","分割;纬度在后)直接返回用户输入内容
格式为x,y。
|
code
| int
| 是否计算成功
-1: 处理超时, 没有请求引擎的任务
0:请求成功 引擎code=0
其他数值:算路失败
|
distance
| int
| 距离,单位:米
|
duration
| int
| 时间,单位:秒
|
tolls
| int
| 高速费用, 返回0即不收取
|
返回示例
{ "errcode": 10000,
"errmsg": "OK",
"errdetail": null,
"data": { "progress": 100, "resultAddress": "http://oss/address" }
}
OSS文件示例
[ { "number":"1",
"origin":"",
"destination":"",
"code":"",
"distance":"122",
"duration":"122" },
{ "number":"2",
"origin":"",
"destination":"",
"code":"",
"distance":"122",
"duration":"122" }
]
3. 附录
附录1:车辆信息
Key
| Key名称
| value说明
|
plate
| 车牌
| plate_number支持支持6位传统车牌和7位新能源车牌;例:plate_number:京XXXXXX;
当restriction=1的时候, 该字段必传
|
type
| 车辆类型
| 0:客车
1:货车(默认)
2:纯电动客车
3:纯电动货车
4:插电式混动客车
5:插电式混动货车
|
size
| 车辆大小
| 高德此分类依据国标
仅货车/纯电动货车/插电式混动货车类型生效
0: 微型车
1:轻型车(默认值)
2:中型车
3:重型车
|
length
| 车辆长度
| 仅货车/纯电动货车/插电式混动货车类型生效
单位米,取值[0 – 30]米,会严格按照填写数字进行限行规避,请按照车辆真实信息合理填写。
|
height
| 车辆高度
| 仅货车/纯电动货车/插电式混动货车类型生效
单位米,取值[0 – 10]米,会严格按照填写数字进行限行规避,请按照车辆真实信息合理填写。
|
width
| 车辆宽度
| 仅货车/纯电动货车/插电式混动货车类型生效
单位米,取值[0 – 10]米,会严格按照填写数字进行限行规避,请按照车辆真实信息合理填写。
|
weight
| 车辆总重
| 仅货车/纯电动货车/插电式混动货车类型生效
单位吨,取值[0 – 200]吨,会严格按照填写数字进行限行规避,请按照车辆真实信息合理填写。 总重的含义是核定载重加上车辆自重的总质量。
|
load
| 车辆载重
| 仅货车/纯电动货车/插电式混动货车类型生效
单位吨,取值[0 – 200]吨,会严格按照填写数字进行限行规避,请按照车辆真实信息合理填写。 载重的含义是核定载重加上车辆自重的总质量。
|
axle
| 车辆轴数
| 仅货车/纯电动货车/插电式混动货车类型生效
单位个,取值[0 –50]个,会严格按照填写数字进行限行规避,请按照车辆真实信息合理填写。
|