首页 > API文档 > 物流轨迹地图API
快递鸟结合地图功能,提供给为电商、商城、生活应用、微信应用等个人APP,以接口API与嵌入式页面开放给客户使用,支持中通、韵达、圆通、申通等8家主流快递公司在地图上直观的展示包裹的位置和预计送达时间。
(1)电商平台物流查询模块,供用户查询订单当前的物流状态
(2)电商、ERP后台的物流监控系统,客服在对账前查询所有运单的签收状态,并追踪问题
(3)电商、ERP后台实时预警模块,对各种问题件进行实时监控处理
(4)电商、ERP后台获取物流状态后,可结合其他服务进行使用,如通知短信、APP通知推送
(5)APP、公众号、网址等物流查询模块,供用户输入单号实时查询物流状态
一、接口描述/说明
1.即时查询(轨迹地图版)接口
(1)查询接口支持按照运单号查询(单个查询)。
(2)接口需要指定快递单号的快递公司编码,格式不对或则编码错误都会返失败的信息。
如:EMS物流单号应选择快递公司编码(EMS)查看快递公司编码(3)返回的物流跟踪信息按照发生的时间升序排列。
(4)接口指令8003。
(5)接口支持的消息接收方式为
HTTP POST,请求方法的编码格式(utf-8):
"application/x-www-form-urlencoded;charset=utf-8"。
(6)接口地址: API测试地址:http://sandboxapi.kdniao.com:8080/kdniaosandbox/gateway/exterfaceInvoke.json
API正式地址:https://api.kdniao.com/Ebusiness/EbusinessOrderHandle.aspx请求系统级参数说明:
参数名称 | 类型 | 说明 | 必须要求 |
---|
RequestData | String | 请求内容需进行URL(utf-8)编码。请求内容JSON格式,须和DataType一致。 | 是 |
EBusinessID | String | 商户ID,请在我的服务页面查看。 | 是 |
RequestType | String | 请求指令类型:8003 | 是 |
DataSign | String | 数据内容签名:把(请求内容(未编码)+AppKey)进行MD5加密,然后Base64编码,最后
进行URL(utf-8)编码。详细过程请查看Demo。 | 是 |
DataType | String | 请求、返回数据类型:2-json; | 否 |
2.订阅(轨迹地图版)接口
(1)此功能为专业定制,为特殊商户提供订阅服务,快递鸟系统会定时推送新的物流信息到商户系统。
(2)订阅快递号需指定相应的快递公司编码,格式不对或则编码错误都会返失败的信息。
如:EMS物流单号应选择快递公司编码(EMS)查看快递公司编码(3)接口支持的消息接收方式为HTTP POST,请求方法的编码格式(utf-8):"application/x-www-form-urlencoded;charset=utf-8"。
(4)接口地址: API测试地址:http://sandboxapi.kdniao.com:8080/kdniaosandbox/gateway/exterfaceInvoke.json
API正式地址:https://api.kdniao.com/api/dist请求系统级参数说明:
参数名称 | 类型 | 说明 | 必须要求 |
---|
RequestData | String | 请求内容需进行URL(utf-8)编码。请求内容JSON格式,须和DataType一致。 | 是 |
EBusinessID | String | 商户ID,请在我的服务页面查看。 | 是 |
RequestType | String | 请求指令类型:8005 | 是 |
DataSign | String | 数据内容签名:把(请求内容(未编码)+AppKey)进行MD5加密,然后Base64编码,最后
进行URL(utf-8)编码。详细过程请查看Demo。 | 是 |
DataType | String | 请求、返回数据类型:2-json; | 否 |
3.推送(轨迹地图版)接口(商户实现)
(1)客户需要按快递鸟要求开发接口,保证信息的正常接收。
(2)快递鸟主动推送时,物流信息接收接口由客户提供。
(3)接口支持的消息接收方式为HTTP POST,请求方法的编码格式(utf-8):"application/x-www-form-urlencoded;charset=utf-8"。
(4)运单物流信息全量推送(每次推送的运单物流信息包括运单当前所有的的物流信息)。
请求系统级参数说明:
参数名称 | 类型 | 说明 | 必须要求 |
---|
RequestData | String | 请求内容需进行URL(utf-8)编码。请求内容只支持JSON格式。 | 是 |
EBusinessID | String | 102-轨迹查询结果, 107-货款状态。 | 是 |
二、接口参数
1.即时查询(轨迹地图版)接口
请求内容字段定义:
参数名称 | 类型 | 说明 | 必须要求 |
---|
OrderCode | String | 订单编号 | 否 |
ShipperCode | String | 快递公司编码 | 是 |
LogisticCode | String | 物流单号 | 是 |
SenderCityName | String | 发件城市 | 是 |
ReceiverCityName | String | 收件城市 | 是 |
IsReturnCoordinates | Int | 是否返回城市经纬度 1 返回 2 不返回 默认1 | 否 |
IsReturnRouteMap | Int | 是否返回轨迹地图 1 返回 2 不返回 默认1 | 否 |
返回参数定义:
参数名称 | 类型 | 说明 | 必须要求 |
---|
EBusinessID | String | 用户ID | 是 |
OrderCode | String | 订单编号 | 否 |
ShipperCode | String | 快递公司编码 | 是 |
LogisticCode | String | 物流运单号 | 否 |
SenderCityLatAndLng | String | 发件城市经纬度 | 是 |
ReceiverCityLatAndLng | String | 收件城市经纬度 | 否 |
Success | Bool | 成功与否 | 是 |
Reason | String | 失败原因 | 否 |
State | String | 物流状态:2-在途中,3-签收,4-问题件 | 是 |
StateEx | String | 增值物流状态:
1-已揽收,
2-在途中,
201-到达派件城市,
202-派件中,
211-已放入快递柜或驿站,
3-已签收,
311-已取出快递柜或驿站,
4-问题件,
401-发货无信息,
402-超时未签收,
403-超时未更新,
404-拒收(退件),
412-快递柜或驿站超时未取 | 是 |
Location | String | 增值所在城市 | 是 |
Traces |
AcceptTime | String | 时间 | 是 |
AcceptStation | String | 描述 | 是 |
Location | String | 当前城市 | 否 |
Action | String | 当前状态 | 否 |
Remark | String | 备注 | 否 |
Coordinates |
Location | String | 城市 | 否 |
LatAndLng | String | 经纬度 | 否 |
PreCoordinates |
Location | String | 城市 | 否 |
LatAndLng | String | 经纬度 | 否 |
EstimatedDeliveryTime | String | 预计到达时间 | 是 |
RouteMapUrl | String | 轨迹地图URL | 否 |
2.订阅(轨迹地图版)接口
请求内容字段定义:
参数名称 | 类型 | 说明 | 必须要求 |
---|
Callback | String | 用户自定义回调信息。 | 否 |
MemberID | String | 会员标识。 | 否 |
WareHouseID | String | 仓库标识 | 否 |
CustomerName | String | 电子面单客户号 | 否 |
CustomerPwd | String | 电子面单密码 | 否 |
SendSite | String | 收件网点标识(名称) | 否 |
ShipperCode | String | 快递公司编码
详细编码参考《快递鸟接口支持快递公司编码.xlsx》 | 是 |
LogisticCode | String | 快递单号 | 是 |
OrderCode | String | 订单编号 | 否 |
MonthCode | String | 月结编号 | 否 |
PayType | Int(1) | 运费支付方式:
1-现付,2-到付,3-月结,4-第三方支付 | 否 |
ExpType | String(2) | 快递类型:1-标准快件
详细快递类型参考《快递公司快递业务类型.xlsx》 | 否 |
Cost | Double | 快递运费 | 否 |
OtherCost | Double | 快递运费 | 否 |
Receiver | Company | String | 收件人公司 | 否 |
Name | String | 收件人 | 是 |
Tel | String | 电话与手机,必填一个 | 是 |
Mobile | String |
PostCode | String | 收件地邮编(ShipperCode为EMS、YZPY时必填) | 否 |
ProvinceName | String | 收件省
(如广东省,不要缺少“省”;如是直辖市,请直接传北京、上海等;
如是自治区,请直接传广西壮族自治区等) | 是 |
CityName | String | 收件市(如深圳市,不要缺少“市”) | 是 |
ExpAreaName | String | 收件区/县(如福田区,不要缺少“区”或“县”) | 是 |
Address | String | 收件人详细地址 | 是 |
Sender | Company | String | 发件人公司 | 否 |
Name | String | 发件人 | 是 |
Tel | String | 电话与手机,必填一个 | 是 |
Mobile | String |
PostCode | String | 发件地邮编(ShipperCode为EMS、YZPY时必填) | 否 |
ProvinceName | String | 发件省
(如广东省,不要缺少“省”;
如是直辖市,请直接传北京、上海等;
如是自治区,请直接传广西壮族自治区等) | 是 |
CityName | String | 发件市(如深圳市,不要缺少“市”) | 是 |
ExpAreaName | String | 发件区/县(如福田区,不要缺少“区”或“县”) | 是 |
Address | String | 发件人详细地址 | 是 |
IsNotice | Int(1) | 是否通知快递员上门揽件:0-通知;1-不通知;不填则 | 否 |
StartDate | String | 上门揽件时间段,格式:YYYY-MM-DD HH24:MM:SS | 否 |
EndDate | String | 否 |
Weight | Double | 月结编号 | 否 |
MonthCode | String | 包裹总重量kg | 否 |
Quantity | Int(2) | 包裹数,一个包裹对应一个运单号,如果是大于1个包裹,返回则按照子母件的方式返回母运单号和子运单号 | 否 |
Volume | Double | 包裹总体积m3 | 否 |
Remark | String | 备注 | 否 |
IsSendMessage | Int(1) | 是否订阅短信:
0-不需要;1-需要 | 否 |
AddService | Name | String | 增值服务名称 | 否 |
Value | String | 增值服务值 | 否 |
CustomerID | String | 客户标识 | 否 |
Commodity | GoodsName | String | 商品名称 | 否 |
GoodsCode | String | 商品编码 | 否 |
Goodsquantity | Int(5) | 商品件数 | 否 |
GoodsPrice | String | 商品价格 | 否 |
GoodsWeight | String | 商品重量kg | 否 |
GoodsDesc | String | 商品描述 | 否 |
GoodsVol | Double | 商品体积m3 | 否 |
IsReturnCoordinates | Int | 是否返回城市经纬度 1 返回 2 不返回 默认1 | 否 |
返回参数定义:
参数名称 | 类型 | 说明 | 必须要求 |
---|
EBusinessID | String | 用户ID | 是 |
UpdateTime | String | 时间 | 是 |
Success | Bool | 成功与否:true,false | 是 |
Reason | String | 失败原因 | 否 |
EstimatedDeliveryTime | String | 订单预计到货时间YYYY-MM-DD HH24:MM:SS | 否 |
SenderCityLatAndLng | String | 发件城市经纬度 | 是 |
ReceiverCityLatAndLng | String | 收件城市经纬度 | 是 |
3.推送(轨迹地图版)接口
应用级输入参数
参数名称 | 类型 | 说明 | 必须要求 |
---|
EBusinessID | String | 用户电商ID | 是 |
PushTime | String | 推送时间 | 是 |
Count | String | 推送物流单号轨迹个数 | 是 |
Data | String | 推送物流单号轨迹集合 | 是 |
订阅查询(轨迹地图版)结果(RequestType:102)
通过轨迹查询(订阅查询)接口订阅到快递鸟的数据,快递鸟推送时,会将推送的RequestType的值置为102,同时返回下列数据
请求内容字段定义:
参数 | 类型 | 说明 | 必须要求 |
---|
EBusinessID | String | 商户ID | 否 |
OrderCode | String | 订单编号 | 否 |
ShipperCode | String | 快递公司编码 | 是 |
LogisticCode | String | 快递单号 | R |
SenderCityLatAndLng | String | 发件城市经纬度 | 是 |
ReceiverCityLatAndLng | String | 收件城市经纬度 | 是 |
Success | Bool | 成功与否:true,false | 是 |
Reason | String | 失败原因 | 否 |
State | String | 物流状态: 0-无轨迹,1-已揽收,2-在途中 201-到达派件城市,3-签收,4-问题件 | 是 |
StateEx | String | 增值物流状态:
1-已揽收,
2-在途中,
201-到达派件城市,
202-派件中,
211-已放入快递柜或驿站,
3-已签收,
311-已取出快递柜或驿站,
4-问题件,
401-发货无信息,
402-超时未签收,
403-超时未更新,
404-拒收(退件),
412-快递柜或驿站超时未取 | 是 |
Location | String | 增值所在城市 | 是 |
CallBack | String | 订阅接口的Bk值 | 否 |
Traces |
Trace | AcceptTime | String | 时间 | 是 |
AcceptStation | String | 描述 | 是 |
Action | String | 当前状态 | 是 |
Location | String | 当前城市 | 是 |
Remark | String | 备注 | 否 |
EstimatedDeliveryTime | String | 预计到达时间yyyy-mm-dd | 否 |
PickerInfo | PersonName | String | 快递员姓名 | 否 |
PersonTel | String | 快递员电话 | 否 |
PersonCode | String | 快递员工号 | 否 |
StationName | String | 网点名称 | 否 |
StationAddress | String | 网点地址 | 否 |
StationTel | String | 网点电话 | 否 |
SenderInfo | PersonName | String | 派件员姓名 | 否 |
PersonTel | String | 派件员电话 | 否 |
PersonCode | String | 派件员工号 | 否 |
StationName | String | 派件网点名称 | 否 |
StationAddress | String | 派件网点地址 | 否 |
StationTel | String | 派件网点电话 | 否 |
Coordinates | Location | String | 城市 | 否 |
LatAndLng | String | 经纬度 | 否 |
PreCoordinates | Location | String | 城市 | 否 |
LatAndLng | String | 经纬度 | 否 |
EstimatedDeliveryTime | String | 预计到达时间yyyy-mm-dd | 是 |
RouteMapUrl | String | 轨迹地图URL | 否 |
返回参数定义
参数名称 | 类型 | 说明 | 必须要求 |
---|
EBusinessID | String | 用户ID | 是 |
UpdateTime | String | 时间 | 是 |
Success | Bool | 成功与否:true,false | 是 |
Reason | String | 失败原因 | 否 |
三、示例
即时查询(增值版)接口
{
"IsReturnCoordinates":1,
"OrderCode":"",
"ShipperCode":"YTO",
"LogisticCode":"YT9259962006185",
"SenderCityName":"泉州市",
"ReceiverCityName":"亳州市"
}
没有物流轨迹的
{
"ReceiverCityLatAndLng" : "33.8764100,115.7791400",
"LogisticCode" : "YT9259962006184",
"ShipperCode" : "YTO",
"Traces" : [ ],
"State" : "0",
"SenderCityLatAndLng" : "24.8894600,118.6130000",
"EBusinessID" : "1305585",
"Reason" : "暂无轨迹信息",
"Success" : true
}
有物流轨迹的
{
"StateEx" : "2",
"EstimatedDeliveryTime" : "2020-08-29 18:53:35",
"PreCoordinates" : [ {
"LatAndLng" : "24.8894600,118.6130000",
"Location" : "泉州市"
}, {
"LatAndLng" : "32.9444800,117.3677900",
"Location" : "蚌埠市"
}, {
"LatAndLng" : "33.8764100,115.7791400",
"Location" : "亳州市"
} ],
"ShipperCode" : "YTO",
"Traces" : [ {
"Action" : "1",
"AcceptStation" : "福建省泉州市德化县 揽收成功",
"AcceptTime" : "2020-08-26 18:53:35",
"Location" : "泉州市"
}, {
"Action" : "2",
"AcceptStation" : "福建省泉州市德化县 已打包",
"AcceptTime" : "2020-08-26 19:08:29",
"Location" : "泉州市"
}, {
"Action" : "2",
"AcceptStation" : "福建省泉州市德化县 已发出 下一站 泉州转运中心",
"AcceptTime" : "2020-08-26 19:16:48",
"Location" : "泉州市"
}, {
"Action" : "2",
"AcceptStation" : "泉州转运中心 已发出 下一站 蚌埠转运中心",
"AcceptTime" : "2020-08-26 21:52:38",
"Location" : "蚌埠市"
}, {
"Action" : "2",
"AcceptStation" : "蚌埠转运中心 已发出 下一站 安徽省亳州市",
"AcceptTime" : "2020-08-28 03:05:43",
"Location" : "亳州市"
}, {
"Action" : "2",
"AcceptStation" : "安徽省亳州市 已收入",
"AcceptTime" : "2020-08-28 11:59:43",
"Location" : "亳州市"
}, {
"Action" : "2",
"AcceptStation" : "安徽省亳州市 已收入",
"AcceptTime" : "2020-08-28 11:59:43",
"Location" : "亳州市"
} ],
"Coordinates" : [ {
"LatAndLng" : "24.8894600,118.6130000",
"Location" : "泉州市"
}, {
"LatAndLng" : "32.9444800,117.3677900",
"Location" : "蚌埠市"
}, {
"LatAndLng" : "33.8764100,115.7791400",
"Location" : "亳州市"
} ],
"EBusinessID" : "1305585",
"Success" : true,
"ReceiverCityLatAndLng" : "33.8764100,115.7791400",
"LogisticCode" : "YT9259962006185",
"State" : "2",
"SenderCityLatAndLng" : "24.8894600,118.6130000",
"Location" : "亳州市",
"RouteMapUrl" : ""
}
订阅(增值版)接口
{
"ShipperCode":"SF",
"OrderCode":"SF201608081055208281",
"LogisticCode":"3100707578976",
"PayType":"1",
"ExpType":"1",
"CustomerName":"",
"CustomerPwd":"",
"MonthCode":"",
"IsNotice":"0",
"Sender":{
"Name":"1255760",
"Tel":"",
"Mobile":"13700000000",
"ProvinceName":"广东省",
"CityName":"深圳市",
"ExpAreaName":"福田区",
"Address":"测试地址"
},
"Receiver":{
"Name":"1255760",
"Tel":"",
"Mobile":"13800000000",
"ProvinceName":"广东省",
"CityName":"深圳市",
"ExpAreaName":"龙华新区",
"Address":"测试地址2"
},
"Commodity":[
{
"GoodsName":"书本"
}
],
"IsReturnCoordinates": 1
}
{
"EBusinessID":"1151847",
"UpdateTime":"2016-08-09 16:42:38",
"Success":true,
"Reason":"",
"SenderCityLatAndLng":"113.88308,22.55329",
"ReceiverCityLatAndLng":"113.88308,22.55329"
}
推送接口(增值版)
{
"EBusinessID":"1261585",
"Count":"1",
"PushTime":"2016-11-03 11:54:34",
"Data":[
{
"EBusinessID":"1261585",
"ShipperCode":"ZTO",
"LogisticCode":"416071867790",
"Success":true,
"State":"2",
"Traces":[
{
"AcceptTime":"2016-10-28 17:54:18",
"AcceptStation":"杭州钱江开发区 的 悠可1 已收件",
"Location":"杭州市",
"Action":"1"
},
{
"AcceptTime":"2016-10-28 19:10:59",
"AcceptStation":"快件离开 杭州钱江开发区 已发往 上海",
"Location":"杭州市",
"Action":"2"
},
{
"AcceptTime":"2016-10-28 21:49:34",
"AcceptStation":"快件已到达 杭州中转部",
"Location":"杭州市",
"Action":"2"
},
{
"AcceptTime":"2016-10-28 22:39:12",
"AcceptStation":"快件离开 杭州中转部 已发往 上海",
"Location":"杭州市",
"Action":"2"
},
{
"AcceptTime":"2016-10-29 02:07:53",
"AcceptStation":"快件已到达 上海航空部",
"Location":"上海市",
"Action":"2"
},
{
"AcceptTime":"2016-10-29 02:36:04",
"AcceptStation":"快件离开 上海 已发往 杨浦同济",
"Location":"上海市",
"Action":"2"
},
{
"AcceptTime":"2016-10-29 03:28:29",
"AcceptStation":"快件已到达 上海",
"Location":"上海市",
"Action":"2"
},
{
"AcceptTime":"2016-10-29 07:25:46",
"AcceptStation":"快件已到达 杨浦同济",
"Location":"上海市",
"Action":"2"
},
{
"AcceptTime":"2016-10-29 07:27:02",
"AcceptStation":"杨浦同济 的 近邻宝 正在派件",
"Location":"上海市",
"Action":"402"
}
],
"StateEx":"402",
"Location":"上海市"
}
]
}
{
"EBusinessID":"1261585",
"UpdateTime":"2016-08-09 16:42:38",
"Success":true,
"Reason":""
}