浏览器版本低!无法浏览完整内容,建议升级或更换浏览器。

WebAPI文档全面上新

新增示例代码、在线运行等功能,帮助您实现快速接入,前往体验吧!

体验新版
服务介绍
服务文档
使用指南
常见问题
更新日志
智能调度排单排线服务

智能调度排单排线是一类Web API接口服务,提供在物流运输前计算合理调度方案的功能。如需试用请至反馈平台申请开通试用权限,将在1-3个工作日内处理。

功能介绍
排单排线服务

用户可通过该功能,生成订单、车辆和路线的合理调度分配方案。
1.支持创建排单排线任务
2.支持查询排单排线任务结果
3.支持线内优化排单计算和查询
4.支持多点有序排单计算和查询
注:使用排单排线服务前必须先创建路网。


接口功能介绍
排单排线计算
https://api.map.baidu.com/ros/v1/scheduler/problem?ak={您的AK}  //POST请求
请求参数
参数名称
参数类型 是否必须 参数说明
scenesType String 必须 算法需要使用的场景类型,场景维度包含网点规模及排单结果路线交叉程度。枚举:LARGE_SCALE_CLUSTER:大规模聚集性场景,SMALL_SCALE_CLUSTER:小规模聚集性场景,LARGE_SCALE_GENERAL:大规模通用场景,SMALL_SCALE_GENERAL:小规模通用场景。大规模场景要求网点数在600点以上,小规模场景网点数600点以下。聚集性为路线不交叉,但是成本不一定最低,通用性为路线可能交叉,但是成本最低
matrixId String 必须 路网矩阵ID,路网矩阵唯一标识码
lbsType String 必须 路网矩阵类型,枚举。LEAST_TIME:时间优先,LEAST_DISTANCE:距离最短,NO_HIGHWAY:不走高速。 用户可以根据自己场景填写
commitId String 非必须 路网矩阵版本ID
distanceType String 必须 距离计算方式,枚举。STRAIGHT:直线距离, TRAVEL:导航距离。直线距离计算场景必须设置车辆的平均行驶速度
depots List<Depot> 必须 仓库信息列表,一期支持单仓

depotId String 必须 仓库ID,用户仓库自定义参数
depotTimeWindow TimeWindow 非必须 时间窗信息,时间约束条件,车辆最早出仓时间和最晚回仓时间

startTime int 非必须 起始时间,单位:分钟,取值范围大于0。例如,上午10点30分的取值为630
endTime int 非必须 结束时间,单位:分钟,取值范围大于1
vehicleGroups List<VehicleGroup> 必须 该仓库的车辆组信息









vehicleTypeId String 必须 车辆类型ID,枚举,目前支持GB01(默认车辆长6000mm,宽2100mm,高3000mm)以及SMALL(小轿车,车辆长4000mm,宽2000mm,高2000mm),两种车辆类型的轴重轴数均为2。该信息用于道路货车限行规避,一个车辆类型会对应一个或多个型号的货车,由用户自行决定车辆型号与车辆类型的映射关系
vehicleModelId String 必须 车辆型号ID,用户自定义参数
vehicleCount int 必须 该型号车数量,不小于0,0代表没有限制
minVisited int 非必须 车辆允许运送的最小订单数量,不小于0,0代表没有限制
maxVisited int 非必须 车辆允许运送的最大订单数量,不小于0,0代表没有限制
maxRunDistance int 非必须 车辆最大行驶距离,单位:米,不小于0,0代表没有限制
maxRunTime int 非必须 车辆最大行驶时间,单位:分钟,不小于0,0代表没有限制
vehicleSkills List<String> 非必须 车辆可运输的货物类型列表(车辆具备某种运输能力,如冷冻功能、运输危化品能力等)
returnToDepot boolean 非必须 是否回仓,默认回仓
vehicleModels List<VehicleModel> 必须 车辆型号信息

vehicleModelId String 必须 车辆型号ID,用户自定义
capacity Capacity 必须 车辆额定承载

weight double 非必须 装载重量,单位:千克。精度:保留小数点后四位
volume double 非必须 装载体积,单位:立方米。精度:保留小数点后四位
count double 非必须 装载数量,精度:保留小数点后四位。重量、体积、数量三个维度至少填写一个,车和货的维度保持一致
perDistanceUnitPrice double 必须 车辆每公里行驶成本,取值必须大于0,单位:元/公里
perTimeUnitPrice
double
非必须
车辆每单位时间行驶成本,取值必须大于0,单位:元/分钟
fixedCost double 非必须 车辆固定损耗成本,单位:元/天,默认值为0
waitingCost double 非必须 车辆等待成本,单位:元/分钟,默认值为0
averageVelocity double 非必须 平均车速,取值必须在0到120之间,单位:千米/小时,distanceType为STRAIGHT时,该参数必填
maxVelocity double 非必须 最大行驶速度,取值必须在0到120之间,且必须大于平均车速,单位:千米/小时
serviceJobs List<ServiceJob> 必须 网点信息列表



serviceJobId String 必须 网点ID,用户自定义参数
serviceStayDuration double 非必须 网点停留时间,取值必须大于0,单位:分钟,默认值为0
demand Capacity 必须 网点待配送货物的量

weight double 非必须 装载重量,单位:千克。精度:保留小数点后四位
volume double 非必须 装载体积,单位:立方米。精度:保留小数点后四位
count double 非必须 装载数量,精度:保留小数点后四位。重量、体积、数量三个维度至少填写一个,车和货的维度保持一致
serviceTimeWindows List<TimeWindow> 非必须 网点可配送的时间段列表

startTime int 非必须 起始时间,单位:分钟,取值范围大于0 。例如,上午10点30分的取值为630
endTime int 非必须 结束时间,单位:分钟,取值范围大于1
skills List<String> 非必须 需要运输的货物类型列表(车辆需要具备某种运输能力,如冷冻功能、运输危化品能力等)

priority

int 非必须 订单优先级,取值范围必须为不小于1,不大于10,数字越大代表优先级越高

返回参数
参数类型 参数类型 参数说明
id String 排单排线计算任务ID
status String 任务执行状态:RUNNING、ERROR
errorCode String 错误码
errorMessage String 错误信息

请求示例
POST https://api.map.baidu.com/ros/v1/scheduler/problem?ak={您的AK} HTTP/1.1 

{
    "scenesType": "SMALL_SCALE_GENERAL",
    "matrixId": "1a72478093ba40519c2fff6e8242a082",
    "lbsType": "LEAST_TIME",
    "distanceType": "TRAVEL",
    "depots": [{
	    "depotId": "340078493e0a4090b2055e7689626001",
	    "depotTimeWindow": {
		    "startTime": 0,
		    "endTime": 1440
	    },
	    "vehicleGroups": [{
		    "vehicleTypeId": "GB01",
		    "vehicleModelId": "model_test_1",
		    "vehicleCount": 0,
		    "returnToDepot": false
	    }]
    }],
    "vehicleModels": [{
	    "vehicleModelId": "model_test_1",
	    "capacity": {
		    "weight": 1000.0,
		    "volume": 1000.0,
		    "count": 1000.0
	    },
	    "perDistanceUnitPrice": 12.22,
	    "perTimeUnitPrice": 20.0
    }],
    "serviceJobs": [{
	    "serviceJobId": "340078493e0a4090b2055e7689626002",
	    "demand": {
		    "weight": 3.02,
		    "volume": 3.07,
		    "count": 3.0
	    }
    }, {
	    "serviceJobId": "340078493e0a4090b2055e7689626003",
	    "demand": {
		    "weight": 1.04,
		    "volume": 4.31,
		    "count": 4.0
	    }
    }, {
	    "serviceJobId": "340078493e0a4090b2055e7689626004",
	    "demand": {
		    "weight": 4.03,
		    "volume": 1.98,
		    "count": 4.0
	    }
    }]
}

返回示例
{
     "id" : "8b664a457cdd42ec871e8344368c5d79",
     "status": "RUNNING",
     "errorCode": "",
     "errorMessage": ""
}

排单排线查询
https://api.map.baidu.com/ros/v3/scheduler/problem?ak={您的AK}&problemId={problemId}  //GET请求
返回参数
参数名称
参数类型
说明
id String 排单排线计算任务ID
status String 任务执行状态:RUNNING、ERROR、FINISHED
errorCode String 错误码
errorMessage String 错误信息
solution Solution 排单排线结果方案

totalTravelDistance double 该方案车辆总行驶距离,单位:米
totalTravelTime double 该方案车辆总行驶时间,单位:分钟
routes List<Route> 车辆分配线路方案





id String 路线唯一标识符
vehicleModelId String 该路线使用的车辆型号ID
travelDistance double 该路线车辆行驶里程,单位:米
travelTime double 该路线车辆行驶时间,单位:分钟
startLocation StartLocation 车辆起始点信息

locationId String 仓点ID
coordinate Coordinate 起始点坐标

latitude double 坐标纬度
longitude double 坐标经度
address String 地址
departureTime double 出发时间,单位:分钟
roadPlans List<RoadPlan> 配送路线规划

serviceJobId String 网点ID
coordinate Coordinate 网点坐标

latitude
double
坐标纬度
longitude
double
坐标经度
address
String
地址
arrivalTime
double
到达网点时间,单位:分钟
departureTime
double
离开网点时间,单位:分钟
routeCoordinates List<Coordinate> 行驶路线坐标

latitude double 坐标纬度
longitude double 坐标经度
address
String
地址
routeMessage RouteMessage 路线信息说明

code String 路线信息码
message String 路线信息描述

线内优化排单计算
https://api.map.baidu.com/ros/v1/scheduler/problem/optimization?ak={您的AK} //POST请求
请求参数
参数名称
参数类型
是否必须
参数说明
matrixId String 必须 路网矩阵ID,路网矩阵的唯一标识
lbsType String 必须 路网矩阵类型,枚举。LEAST_TIME:时间优先,LEAST_DISTANCE:距离最短,NO_HIGHWAY:不走高速。 用户可以根据自己场景填写
commitId String 非必须 路网矩阵版本ID
distanceType String 必须 距离计算方式,枚举。STRAIGHT:直线距离, TRAVEL:导航距离。直线距离计算场景必须设置车辆的平均行驶速度
depotId String 必须 仓库ID,用户自定义参数
depotTimeWindow TimeWindow 非必须 时间窗信息,时间约束条件,仓库运营时间,车辆最早出仓时间和最晚回仓时间

startTime int 非必须 起始时间,单位为分钟,取值范围大于0 。例如,上午10点30分的取值为630
endTime int 非必须 结束时间,单位为分钟,取值范围大于1
vehicleTimeWindow
TimeWindow
非必须
时间窗信息,时间约束条件,车辆运营时间

startTime
int
非必须
起始时间,单位为分钟,取值范围大于0 。例如,上午10点30分的取值为630

endTime
int
非必须
结束时间,单位为分钟,取值范围大于1
vehicleTypeId String 必须 车辆类型ID,枚举,目前支持GB01(默认车辆长6000mm,宽2100mm,高3000mm)以及SMALL(小轿车,车辆长4000mm,宽2000mm,高2000mm),两种车辆类型的轴重轴数均为2。该信息用于道路货车限行规避,一个车辆类型会对应一个或多个型号的货车,由用户自行决定车辆型号与车辆类型的映射关系
vehicleModelId String 必须 车辆型号ID,用户自定义参数
returnToDepot boolean 非必须 是否回仓,默认回仓
averageVelocity double 非必须 平均车速,单位:千米/小时。distanceType为STRAIGHT时,该参数必填且值不小于0
maxVelocity double 非必须 最大行驶速度,单位:千米/小时
serviceJobs List<ServiceJob> 必须 网点信息列表

serviceJobId String 必须 网点ID,用户自定义参数
serviceStayDuration double 非必须 网点停留时间,单位:分钟,默认值为0
serviceTimeWindows List<TimeWindow> 非必须 网点时间窗列表

startTime int 非必须 起始时间,单位为分钟,取值范围大于0 。例如,上午10点30分的取值为630
endTime int 非必须 结束时间,单位为分钟,取值范围大于1

返回参数
参数名称 参数类型 参数说明
id String 排单排线计算任务ID
status String 任务执行状态:RUNNING、ERROR
errorCode String 错误码
errorMessage String 错误信息

线内优化结果查询
https://api.map.baidu.com/ros/v3/scheduler/problem/optimization?ak={您的AK}&optimizationProblemId={optimizationProblemId} //GET请求
返回参数
参数名称
参数类型
说明
id String 排单排线计算任务ID
status String 任务执行状态:RUNNING、ERROR、FINISHED
errorCode String 错误码
errorMessage String 错误信息
route ExternalRouteV2 车辆线路方案





id String 路线唯一标识符
vehicleModelId String 该路线使用的车辆型号ID
travelDistance double 该路线车辆行驶里程,单位:米
travelTime double 该路线车辆行驶时间,单位:分钟
loadRate double
负载率
startLocation StartLocation 车辆起始点信息

locationId String 仓点ID
coordinate Coordinate 起始点坐标

latitude double 坐标纬度
longitude double 坐标经度
address String 地址
departureTime double 出发时间,单位:分钟
roadPlans List<RoadPlan> 配送路线规划

serviceJobId String 网点ID
coordinate Coordinate 网点坐标

latitude
double
坐标纬度
longitude
double
坐标经度
address
String
地址
arrivalTime
double
到达网点时间,单位:分钟
departureTime
double
离开网点时间,单位:分钟
routeCoordinates List<Coordinate> 行驶路线坐标

latitude double 坐标纬度
longitude double 坐标经度
address
String
地址
routeMessage RouteMessage 路线信息说明

code String 路线信息码
message String 路线信息描述

多点有序排单计算
https://api.map.baidu.com/ros/v1/scheduler/problem/ordered?ak={您的AK} //POST请求
请求参数
参数名称
参数类型 是否必须 参数说明
matrixId String 必须 路网矩阵ID,路网矩阵唯一标识码
lbsType String 必须 路网矩阵类型,枚举。LEAST_TIME:时间优先,LEAST_DISTANCE:距离最短,NO_HIGHWAY:不走高速。 用户可以根据自己场景填写
commitId String 非必须 路网矩阵版本ID
depotId String 必须 仓库ID,用户仓库自定义参数
depotDepartureTime int 非必须 出仓时间,单位:分钟,取值范围[0,1439],默认为0。例如,上午10点30分的取值为630
vehicleTypeId String 必须 车辆类型ID,枚举,目前支持GB01(默认车辆长6000mm,宽2100mm,高3000mm)以及SMALL(小轿车,车辆长4000mm,宽2000mm,高2000mm),两种车辆类型的轴重轴数均为2。该信息用于道路货车限行规避,一个车辆类型会对应一个或多个型号的货车,由用户自行决定车辆型号与车辆类型的映射关系
vehicleModelId String 必须 车辆型号ID,用户自定义参数
returnToDepot boolean 非必须 是否回仓,默认回仓
averageVelocity double 非必须 车辆行驶的平均速度,单位:千米/小时
maxVelocity double 非必须 最大行驶速度,单位:千米/小时
serviceJobs List<ServiceJob> 必须 网点信息列表

serviceJobId String 必须 网点ID,用户自定义参数
serviceStayDuration double 非必须 网点停留时间,单位:分钟,默认

返回参数
参数名称 参数类型 参数说明
id String 排单排线计算任务ID
status String 任务执行状态:RUNNING、ERROR
errorCode String 错误码
errorMessage String 错误信息

多点有序排单查询
https://api.map.baidu.com/ros/v3/scheduler/problem/ordered?ak={您的AK}&orderedProblemId={orderedProblemId} //GET请求
返回参数
参数名称
参数类型
说明
id String 排单排线计算任务ID
status String 任务执行状态:RUNNING、ERROR、FINISHED
errorCode String 错误码
errorMessage String 错误信息
route ExternalRouteV2 车辆线路方案





id String 路线唯一标识符
vehicleModelId String 该路线使用的车辆型号ID
travelDistance double 该路线车辆行驶里程,单位:米
travelTime double 该路线车辆行驶时间,单位:分钟
loadRate double
负载率
startLocation StartLocation 车辆起始点信息

locationId String 仓点ID
coordinate Coordinate 起始点坐标

latitude double 坐标纬度
longitude double 坐标经度
address String 地址
departureTime double 出发时间,单位:分钟
roadPlans List<RoadPlan> 配送路线规划

serviceJobId String 网点ID
coordinate Coordinate 网点坐标

latitude
double
坐标纬度
longitude
double
坐标经度
address
String
地址
arrivalTime
double
到达网点时间,单位:分钟
departureTime
double
离开网点时间,单位:分钟
routeCoordinates List<Coordinate> 行驶路线坐标

latitude double 坐标纬度
longitude double 坐标经度
address
String
地址
routeMessage RouteMessage 路线信息说明

code String 路线信息码
message String 路线信息描述

服务状态码
返回码 定义 常见原因
200 返回成功 服务请求正常召回
400 请求失败 请求参数不合法,请按照返回提示修改参数
401 未鉴权 ak不合法或者账号未开通相应权限
403 禁止 未开通白名单,请前往反馈工单联系我们
503 服务不可用 服务异常,请前往反馈工单联系我们
500 内部服务错误 服务异常,请前往反馈工单联系我们

使用方法
编码说明

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


产品上线
智能调度排单排线服务上线

  • 文档根本没法用

  • 文档水平很差

  • 文档水平一般

  • 文档不错

  • 文档写的很好

如发现文档错误,或对此文档有更好的建议,请在下方反馈。问题咨询请前往反馈平台提交工单咨询。

提交反馈

拖动标注工具

添加矩形标注

添加箭头标注

完成

取消