服务介绍
服务文档
使用指南
常见问题
更新日志
智能调度路网矩阵服务
智能调度路网矩阵服务是一类web api接口服务,提供了物流调度排单场景的网点距离计算服务。如需试用请至申请开通试用权限,将在1-3个工作日内处理。
功能介绍
路网矩阵服务
可计算网点两两之间的距离矩阵,提供以下功能:
1.支持计算货车距离和非货车距离
2.支持路网矩阵创建
3.支持路网矩阵查询
4.支持新增/减少/更新网点坐标
5.支持网点线路更新
6.支持路网删除
7.支持修改路网任务权重
8.支持查询路网任务执行时间
接口功能介绍
路网创建接口
https://api.map.baidu.com/ros/v1/matrix?ak={您的ak} //post请求
请求参数
参数名称 |
参数类型 |
是否必须 |
参数说明 | |
---|---|---|---|---|
name | string | 否 | 路网矩阵名称 | |
locationtype |
string |
否 | 默认值:bd09ll,wgs84:gps 坐标,gcj02:国测局加密坐标,bd09ll:百度经纬度坐标,bd09mc:百度墨卡托坐标 | |
locations |
list |
是 |
网点信息列表,包括仓库 | |
|
latitude | double | 是 | 坐标的纬度 |
longitude | double | 是 | 坐标的经度 | |
key | string | 是 | 客户网点的唯一key,排单排线需要用到, 长度最大32, 路网中不允许出现key相同的情况 | |
lbstype |
list |
是 | least_time:时间优先,least_distance: 距离最短, no_highway: 不走高速,客户可以根据自己场景填写 | |
vehicletype |
list |
是 |
路网初始化需要的车型信息, gb01 4.5米箱货, small 小轿车 |
返回参数
参数名称 | 参数类型 | 参数说明 |
id | string | 路网id |
commitid | string | 路网版本(增加网点删除网点更新网点 路网版本会变化,路网id不变) |
status | string | running, finished, error 计算状态 |
errorcode | string | 错误码 |
errormessage | string | 错误信息 |
请求示例
post https://api.map.baidu.com/ros/v1/matrix?ak={您的ak} http/1.1 { "name": "test", "locationtype": "bd09ll", "lbstype": [ "least_time" ], "vehicletype": [ "gb01" ], "locations": [ { "latitude": 31.863202, "longitude": 117.103855, "key": "aaaa" }, { "latitude": 31.863202, "longitude": 117.103855, "key": "bbbb" }, { "latitude": 31.863202, "longitude": 117.103855, "key": "vvvv" } ] }
返回示例
http/1.1 200 ok x-bce-request-id: f3d25695-6975-4b2b-a540-18f77907f486 { "id" : "8b664a457cdd42ec871e8344368c5d79", "commitid": "ad51151d0252463c83030723bb2f28a0", "status": "running", "errorcode": "", "errormessage": "" }
路网查询接口
https://api.map.baidu.com/ros/v2/matrix?ak={您的ak}&matrixid={matrixid}&commitid={commitid} //get请求
返回结果
参数名称 | 参数类型 | 参数说明 |
id | string | 路网id |
commitid | string | 路网版本(增加网点删除网点更新网点 路网版本会变化,路网id不变) |
status | string | running, finished, error 计算状态 |
errorcode | string | 错误码 |
errormessage | string | 错误信息 |
路网新增/减少网点/更新网点坐标
https://api.map.baidu.com/ros/v2/matrix?ak={您的ak}&matrixid={matrixid} //put请求
请求参数
参数名称 |
参数类型 |
是否必须 |
参数说明 | |
---|---|---|---|---|
locations | list |
是 | 网点列表 | |
|
latitude | double | 是 | 坐标的纬度 |
longitude | double | 是 | 坐标的经度 | |
key | string | 是 | 客户网点的唯一key,排单排线需要用到,长度最大32 | |
type | string | 是 | add , delete,update |
返回参数
参数名称 | 参数类型 | 参数说明 |
id | string | 路网id |
commitid | string | 路网版本(增加网点删除网点更新网点 路网版本会变化,路网id不变) |
status | string | running, finished, error 计算状态 |
errorcode | string | 错误码 |
errormessage | string | 错误信息 |
网点线路更新
https://api.map.baidu.com/ros/v2/matrix/point?ak={您的ak}&matrixid={matrixid}//put请求
请求参数
参数名称 |
参数类型 |
是否必须 |
参数说明 | |
---|---|---|---|---|
from | location | 是 | 网点信息 | |
|
latitude | double | 是 | 坐标的纬度 |
longitude | double | 是 | 坐标的经度 | |
key | string | 是 | 客户网点的唯一key,排单排线需要用到 | |
to | location | 是 | 网点信息 | |
|
latitude | double | 是 | 坐标的纬度 |
longitude | double | 是 | 坐标的经度 | |
key | string | 是 | 客户网点的唯一key,排单排线需要用到 |
返回参数
参数名称 | 参数类型 | 参数说明 |
id | string | 路网id |
commitid | string | 路网版本(增加网点删除网点更新网点 路网版本会变化,路网id不变) |
status | string | running, finished, error 计算状态 |
errorcode | string | 错误码 |
errormessage | string | 错误信息 |
路网删除
https://api.map.baidu.com/ros/v2/matrix/delete?ak={您的ak} //put请求
请求参数
参数名称 |
参数类型 |
参数说明 |
---|---|---|
matrixids |
list |
网点的集合id |
路网任务执行时间查询接口
https://api.map.baidu.com/ros/v1/matrix/current/task?ak={您的ak} //get请求
请求示例
get https://api.map.baidu.com/ros/v1/matrix/current/task?ak={您的ak} http/1.1
返回参数
参数名称 | 参数类型 | 参数说明 |
matrixid | string | 路网id |
commitid | string | 路网版本(增加网点删除网点更新网点 路网版本会变化,路网id不变) |
status | string | running, finished, error 计算状态 |
time | string | 时间信息 |
返回示例
http/1.1 200 ok x-bce-request-id: c3d25695-697f-4b2b-a540-18f77907f486 [ { "matrixid" : "d", "commitid" : "v" "status" : "running", "time" : "3分钟"; } ]
路网任务权重修改接口
https://api.map.baidu.com/ros/v1/matrix/weight?ak={您的ak} //put请求
请求参数
参数名称 |
参数类型 |
是否必填 | 参数说明 |
---|---|---|---|
matrixid | string | 是 | 路网id |
weight | integer | 是 | 该路网的权重 0最低, 10最高 |
请求示例
get https://api.map.baidu.com/ros/v1/matrix/weight?ak={您的ak} http/1.1 { "matrixid": "matrixid", "weight" : 8 }
返回示例
http/1.1 200 ok x-bce-request-id: c3d25695-697f-4b2b-a540-18f77907f486
错误码
错误码 | 说明 |
matrixnotfound | 找不到路网 |
invalidrequestparam | 请求参数错误 |
typeempty | 更新网点的类型不能为空 |
locationempty | 网点信息不能为空 |
matrixcommitidnotfound | 路网版本未找到 |
notfoundavailablematrix | 找不到可用的路网 |
problemidsmappingerror | 单据中的id在可用的路网中未找到 |
matrixnotfinishedupdate | 当前路网还未完成,不能进行网点的变更操作 |
locationidsnotfound | 单据中的用户网点未找到 |
lbstypesnotfound | 驾驶策略维度信息在路网中未找到 |
vehicletypetypesnotfound | 车型维度信息在路网中未找到 |
serverinternalerror | 系统错误 |
typesnotfoundinmatrix | 无法获取维度信息 |
lbstypenotfoundinmatrix | 无法获取驾驶策略维度信息 |
vehicletypenotfoundinmatrix | 无法获取车型维度信息 |
matrixpointerror | 网点中的信息有空值 |
matrixlocationkeyerror | 网点中的key最长为32 |
服务状态码
返回码 | 定义 | 常见原因 |
---|---|---|
200 | 返回成功 | 服务请求正常召回 |
400 | 请求失败 | 请求参数不合法,请按照返回提示修改参数 |
401 | 未鉴权 | ak不合法或者账号未开通相应权限 |
403 | 禁止 | 未开通白名单,请前往反馈工单联系凯发k8官方旗舰厅 |
503 | 服务不可用 | 服务异常,请前往反馈工单联系凯发k8官方旗舰厅 |
500 | 内部服务错误 | 服务异常,请前往反馈工单联系凯发k8官方旗舰厅 |
使用方法
服务使用流程
编码说明
api请求中需要用到中文或一些特殊字符的参数,如query、region等,为了避免提交到后台乱码,需要对这几个参数值进行编码处理,转换成utf-8字符的二字符十六进制值,凡是不在下表中的字符都需要进行编码。
字符集合 | 字符 |
url非保留字 |
a b c d e f g h i j k l m n o p q r s t u v w x y z a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9 - _ . ~ |
url保留字 |
! * ' ( ) ; : @ & = $ , / ? % # [ ] |
如果中文参数中使用url保留字字符的字面意思,例如:region关键字取值为"?北京",检索关键字包含一个问号,此问号也必须进行编码。
附注:
javascript中一般采用encodeuricomponent函数对特殊字符进行编码。
java中可以使用函数urlencoder.encode对特殊字符进行编码。
c#中可以使用函数httputility.urlencode对特殊字符进行编码。
php中可以使用函数urlencode对特殊字符进行编码。
服务常见问题
1、如何开通路网矩阵api?
路网矩阵api暂未提供免费配额,如需试用请至申请开通试用权限,将在1-3个工作日内处理。
2020年2月25日
v1.0
产品上线
智能调度路网矩阵服务上线