如何使用外部API接口實現快遞物流單號查詢(快遞鳥案例)

前兩天需要做一個快遞查詢的需求,由於也是第一次做,完全不懂,但是還是明白這必定是需要調用外部接口來實現,並且應該不是調用快遞公司所給的接口,於是便上網查詢了能夠提供快遞查詢接口的公司。

目前國內主流的快遞物流查詢API接口服務商目前只有三家,分別是菜鳥、快遞鳥、快遞100,這三家都分別獲得了融資,菜鳥是阿里投資的,爲淘系(淘寶和天貓)服務,快遞鳥是中銀粵財、東方富海、啓賦資本投資的,爲非淘系(拼多多、蘑菇街、網易考拉等)服務,快遞100是京東、國信弘盛投資的,爲京東、百度等服務。
還有一些像阿里雲是應用市場平臺,入駐這類的平臺的很多服務商都是用的快遞鳥免費物流接口(這家產品介紹用的都是快遞鳥官網的圖),因爲菜鳥和快遞100都是收費的(融資信息可以在投資界網站上查看)。
如何使用外部API接口實現快遞物流單號查詢(快遞鳥案例)
快遞API的應用場景與用途
最常見的應用場景如下:
(1)電商網站:例如B2C、團購、B2B、批發分銷站、C2C、本地生活交易等網站。
(2)管理系統:訂單處理平臺、訂貨平臺、發貨平臺、分銷系統、渠道管理系統、客戶管理系統、ERP等。
快遞API的用途如下:
(1)讓顧客登錄網站後,直接在“我的訂單”頁面內就能看到訂單的物流狀態。
(2)自動篩選出“已簽收”、“疑難件”等狀態的單號,減輕物流跟單人員的壓力。
(3)改變訂單的狀態和交易流程,例如單號變爲“已簽收”,就能讓訂單變爲可以確認退換貨等。
(4)評估選擇快遞公司,根據“已簽收”的運單數,可以算出銷售人員的業績,且便於應對貨到付款的結算。
(5)郵件、短信提醒用戶運單的最新狀態,可以安撫用戶,也可以利用郵件短信二次營銷。
如果自己的網站是非淘系京東系的話,這邊建議使用快遞鳥,所以就以快遞鳥作爲案例進行解說吧.

註冊快遞鳥賬號

註冊這裏就不演示了,註冊完成後登入,進入到個人中心,這裏需要進行一個實名認證,按公司產品的類型進行一個選擇,展示頁面如圖1,認證完成後在我的產品服務中選擇自己所需要的服務,當然對於初創型公司來說選擇免費版就夠了,等到業務做大時再選擇其他產品服務.還有就是在個人中心中如圖2所示,我們需要記住的是用戶ID,和API key(不要泄露),這將是我們進行接口調用時需要用到的,

  1. 接口規則
    (1)、查詢接口支持按照運單號查詢(單個查詢,併發不超過10個/S)。
    (2)、指定的物流運單號選擇相應的快遞公司編碼,格式不對或則編碼錯誤都會返失敗的信息。如EMS物流單號應選擇快遞公司編碼(EMS)
    (3)、返回的物流跟蹤信息按照發生的時間升序排列。
    (4)、接口指令1002。
    (5)、請求地址:快遞鳥
  2. 系統級和應用級輸入參數
    如何使用外部API接口實現快遞物流單號查詢(快遞鳥案例)
    3.返回參數
    如何使用外部API接口實現快遞物流單號查詢(快遞鳥案例)
    請求示例:
    <br>{
    "OrderCode": "",
    "ShipperCode": "SF",
    "LogisticCode": "118650888018"}//返回示例<br>//沒有物流軌跡的{
    "EBusinessID": "1109259",
    "Traces": [],
    "OrderCode": "",
    "ShipperCode": "SF",
    "LogisticCode": "118461988807",
    "Success": true,
    "Reason": null}//有物流軌跡的{
    "EBusinessID": "1109259",
    "OrderCode": "",
    "ShipperCode": "SF",
    "LogisticCode": "118461988807",
    "Success": true,
    "CallBack":"",
    "State": ,
    "Reason": null,
    "Traces": [
        {
            "AcceptTime": "2019/06/25 08:05:37",
            "AcceptStation": "正在派件..(派件人:鄧裕富,電話:18718866310)[深圳 市]",
            "Remark": null
        },
        {
            "AcceptTime": "2019/06/25 04:01:28",
            "AcceptStation": "快件在 深圳集散中心 ,準備送往下一站 深圳 [深圳市]",
            "Remark": null
        },
        {
            "AcceptTime": "2019/06/25 01:41:06",
            "AcceptStation": "快件在 深圳集散中心 [深圳市]",
            "Remark": null
        },
        {
            "AcceptTime": "2019/06/24 20:18:58",
            "AcceptStation": "已收件[深圳市]",
            "Remark": null
        },
        {
            "AcceptTime": "2019/06/24 20:55:28",
            "AcceptStation": "快件在 深圳 ,準備送往下一站 深圳集散中心 [深圳市]",
            "Remark": null
        },
        {
            "AcceptTime": "2019/06/25 10:23:03",
            "AcceptStation": "派件已簽收[深圳市]",
            "Remark": null
        },
        {
            "AcceptTime": "2019/06/25 10:23:03",
            "AcceptStation": "簽收人是:已簽收[深圳市]",
            "Remark": null
        }
    ]}

    2接收接口

這個是用戶在訂閱單號成功且有物流軌跡更新後,快遞鳥的推送
客戶通過下單、訂閱接口,把運單號在快遞鳥系統訂閱。運單物流信息有更新,快遞鳥通過推送接口把更新的信息推送給客戶。推送接口由用戶按照快遞鳥規則實現。商戶開放接口,快遞鳥定時將最新的物流軌跡推送到商戶平臺。
優點:客戶不需要關注軌跡變化,一旦有更新,快遞鳥自動推送。
缺點:對客戶的服務器性能有所要求,快遞鳥定時請求接口,對客戶的服務器有一定的影響,客戶服務器異常將接受不到最新數據。
快遞鳥推送接口根據業務不同,會根據RequestType的分類推送不同的數據,用戶需對推送的數據進行分類保存。原推送接口無需變化,快遞鳥會根據推送版本進行推送。

  1. 接口規則
    (1)、客戶服務器必須穩定,並且有一定的接受數據能力(需要在5S內給快遞鳥返回成功示例,超時會判斷推送失敗)。快遞鳥通過多線程推送物流信息給客戶。
    (2)、客戶需要按快遞鳥要求開發接口,保證信息的正常接收。客戶接數據後,存儲並馬上返回接收響應。如果客戶對數據進行處理,再做出響應。這會造成網絡超時,傳輸效率低下。
    (3)、主動推送時物流信息接收接口由客戶提供,接口必須按照快遞鳥的要求實現。
    (4)、客戶提供接口地址,用戶登陸用戶管理後臺-----調試平臺-----推送接口進行測試---(成功返回示例後)纔可以配置。
    (5)、接口只支持Json數據格式。
    (6)、POST方式請求。
    示例:
    
    //快遞鳥請求接收接口示例<br>訂閱查詢結果示例:
    {
    "EBusinessID": "1109259",
    "Count": "2",
    "PushTime": "2015-03-11 16:21:06",
    "Data": [
        {
            "EBusinessID": "1109259",
            "OrderCode": "",
            "ShipperCode": "EMS",
            "LogisticCode": "5042260908504",
            "Success": true,
            "Reason": "",
            "State": "2",
            "CallBack": "0",
            "Traces": [
                {
                    "AcceptTime": "2015-03-06 21:16:58",
                    "AcceptStation": "深圳市橫崗速遞營銷部已收件,(攬投員姓名:鍾定基;聯繫電話:)",
                    "Remark": ""
                },
                {
                    "AcceptTime": "2015-03-07 14:25:00",
                    "AcceptStation": "離開深圳市 發往廣州市",
                    "Remark": ""
                },
                {
                    "AcceptTime": "2015-03-08 00:17:00",
                    "AcceptStation": "到達廣東速遞物流公司廣航中心處理中心(經轉)",
                    "Remark": ""
                },
                {
                    "AcceptTime": "2015-03-08 01:15:00",
                    "AcceptStation": "離開廣州市 發往北京市(經轉)",
                    "Remark": ""
                },
                {
                    "AcceptTime": "2015-03-09 09:01:00",
                    "AcceptStation": "到達北京黃村轉運站處理中心(經轉)",
                    "Remark": ""
                },
                {
                    "AcceptTime": "2015-03-09 18:39:00",
                    "AcceptStation": "離開北京市 發往呼和浩特市(經轉)",
                    "Remark": ""
                },
                {
                    "AcceptTime": "2015-03-10 18:06:00",
                    "AcceptStation": "到達  呼和浩特市 處理中心",
                    "Remark": ""
                },
                {
                    "AcceptTime": "2015-03-11 09:53:48",
                    "AcceptStation": "呼和浩特市郵政速遞物流分公司金川攬投部安排投遞(投遞員姓名:安長虹;聯繫電話:18047140142)",
                    "Remark": ""
                }
            ]
        },
        {
            "EBusinessID": "1109259",
            "OrderCode": "",
            "ShipperCode": "EMS",
            "LogisticCode": "5042260943004",
            "Success": true,
            "Reason": "",
            "State": "2",
            "CallBack": "0",
            "Traces": [
                {
                    "AcceptTime": "2015-03-07 15:26:09",
                    "AcceptStation": "深圳市橫崗速遞營銷部已收件,(攬投員姓名:周宏彪;聯繫電話:13689537568)",
                    "Remark": ""
                },
                {
                    "AcceptTime": "2015-03-08 16:32:00",
                    "AcceptStation": "離開深圳市 發往廣州市",
                    "Remark": ""
                },
                {
                    "AcceptTime": "2015-03-09 00:58:00",
                    "AcceptStation": "到達廣東速遞物流公司廣航中心處理中心(經轉)",
                    "Remark": ""
                },
                {
                    "AcceptTime": "2015-03-09 01:15:00",
                    "AcceptStation": "離開廣州市 發往北京市(經轉)",
                    "Remark": ""
                },
                {
                    "AcceptTime": "2015-03-10 05:20:00",
                    "AcceptStation": "到達北京黃村轉運站處理中心(經轉)",
                    "Remark": ""
                },
                {
                    "AcceptTime": "2015-03-10 11:59:00",
                    "AcceptStation": "離開北京市 發往廊坊市(經轉)",
                    "Remark": ""
                },
                {
                    "AcceptTime": "2015-03-10 14:23:00",
                    "AcceptStation": "到達廊坊市處理中心(經轉)",
                    "Remark": ""
                },
                {
                    "AcceptTime": "2015-03-11 08:55:00",
                    "AcceptStation": "離開廊坊市 發往保定市(經轉)",
                    "Remark": ""
                }
            ]
        }
    ]
    }

貨款狀態:
{
"EBusinessID": "1109259",
"Count": "2",
"PushTime": "2015/3/11 16:21:06",
"Data": [
{
"EBusinessID": "1109259",
"OrderCode": "",
"ShipperCode": "EMS",
"LogisticCode": "5042260908504",
"Success": true,
"Reason": "",
"State": "2",
"CallBack": "0",
"OrderState":"1",
"AccountName":"張三",
"AccountTel":"13800000000",
"AccountNum":"0321"
},
{
"EBusinessID": "1109259",
"OrderCode": "",
"ShipperCode": "EMS",
"LogisticCode": "5042260908522",
"Success": true,
"Reason": "",
"State": "2",
"CallBack": "0",
"OrderState":"1",
"AccountName":"張三",
"AccountTel":"13800000011",
"AccountNum":"0321"
}
]
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章