国际快递查询API接口对接JAVA示例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
国际物流快递查询API接口java如何对接
国际快递查询接口的需求量很大,例如一些跨境电商B2C网站、快递查询APP、快递柜、跨境物流公司等都会需要用到国际快递接口。
目前市面上的快递接口,以国内快递居多,有些虽然号称支持多家国际快递和国际邮政,但实际调用时,由于国际快递网站变化较多,所以经常出现不稳定的情况。这里我要介绍的是快递鸟的国际快递接口,他们一直专做国际快递,支持的国内外600多家快递,大部分国外主流快递物流公司的接口可以对接,提供的接口也非常可靠。
国际快递特性(含国际邮政)
1.可在两个网站查询到信息:属于万国邮联的国际邮政单号,可以分别在发件国家邮政官网与目的国家邮政官网查询到数据。相对而言,国内快递一般只需要在一个网站查询数据。
2.海关问题:国际包裹是跨国包裹,需要通过两国的海关查验,有时候会被海关扣押,进而导致时效不如国内快递稳定。
3.运输时间长:国际邮政包裹相对国际快递价格便宜很多,所以运输时间也慢,甚至会需要1到2个月才能签收。
4.多语言问题:由于包裹是跨国的,必然会涉及多语言问题,国内客户需要看到的是中文信息,而国外客户希望看到的是当地语言的物流信息。
国际快递API特性(快递鸟)
1.包含发件国与目的国的数据:快递鸟的API中包含的参数有 origin_info(发件国物流信息)和destination_info(目的国物流信息),所以通过该接口可以让用户看到最为完整的物信息。
2.智能识别快递状态:当检测到包裹在海关停滞,或者包裹被退回等信息,快递鸟会返回“exception”(可能异常)的状态,帮助用户第一时间发现异常件,从而尽早处理。
3.按照单号个数计费:由于国际包裹的运输时间很长,完整的运输周期可能需要两个月,而每天至少需要查询两次以上。所以按照查询单号个数计费而不是按照API调用次数计费,是最为良心的计费方式。
4.多语言API:针对不同的快递商,可以按照语言返回不同的结果。包含中文、英文、日语、印度语、阿拉伯语等等。
对接示例
这里以快递鸟为例,不同的接口的对接方式比较类似,都需要注册,并生成自己的API key。
接口支持的消息接收方式为HTTP POST
请求方法的编码格式为utf-8
请求body部分的参数的数据格式为json 格式
请求头部信息参数
请求body
carrier_code 参数是自己定义的快递商家的简码,具体的可以在这里查看。
还有需要注意的就是body部分这两个参数需要时json数据格式。大概样子就是这样的
返回参数定义
返回示例
{
"meta": {
"code": 200,
"type": "Success",
"message": "Success"
},
"data": {
"items": [{
"id": "442f798ea35749e7605d1a73d4181a01",
"tracking_number": "RE113184005HK",
"carrier_code": "hong-kong-post",
"status": "transit",
"original_country": "Hong Kong [CN]",
"destination_country": "Colombia",
"itemTimeLength": null,
"origin_info": {
"weblink": "http:\/\/www.hongkongpost.hk\/",
"phone": "852 2921 2222",
"carrier_code": "hong-kong-post",
"trackinfo": [{
"Details": "CO",
"StatusDescription": "The item ( RE113184005HK ) left Hong Kong for its destination on 10-Oct-2015 ", "Date": "2015-10-09 00:00"
china-ema
参数名称参数类型参数说明是否一定要返回该项值
code 数字返回码成功返回200,失败有其他队列的错误码type string 接口类型成功返回Success
message string 返回信息说明成功返回Succes,失败返回队列的错误信息data json 查询到的物流信息成功返回物流信息,失败返回空
},
"destination_info": {
"weblink": "http:\/\/.co\/",
"phone": "(57-1) 4722000",
"carrier_code": "colombia-post",
"trackinfo": [{
"Date": "2015-10-22 20:52",
"StatusDescription": "DIGITALIZADO",
"Details": "CTP.CENTRO A"
}, {
"Date": "2015-10-22 17:02",
"StatusDescription": "Registro de entrega exitosa",
"Details": ""
}, {
"Date": "2015-10-22 16:55",
"StatusDescription": "ENTREGADO",
"Details": "CD.MONTEVIDEO"
}, {
"Date": "2015-10-22 09:31",
"StatusDescription": "REASIGNADO",
"Details": "CD.NORTE"
}, {
"Date": "2015-10-22 08:52",
"StatusDescription": "REASIGNADO",
"Details": "CD.NORTE"
}, {
"Date": "2015-10-22 02:39",
"StatusDescription": "En proceso",
"Details": "CTP.CENTRO A"
}, {
"Date": "2015-10-21 16:36",
"StatusDescription": "En proceso",
"Details": "CTP.CENTRO A"
}, {
"Date": "2015-10-20 06:29",
"StatusDescription": "Envío Recibido en la oficina de cambio internacional", "Details": "COBOGC"