免费快递查询api技术文档【C#】_第1页
免费快递查询api技术文档【C#】_第2页
免费快递查询api技术文档【C#】_第3页
免费快递查询api技术文档【C#】_第4页
免费快递查询api技术文档【C#】_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、免费快递查询api技术文档【C#】1.1 即时查询接口1.1.1 功能说明 物流轨迹查询-使用的物流单号和快递单号即可实现查询物流信息。1.1.2 接口规则 (1)、查询接口支持按照运单号查询(单个查询)。 (2)、指定的物流运单号选择相应的快递公司编码,格式不对或则编码错误都会返失败的信息。如EMS物流单号应选择快递公司编码(EMS)(3)、接口来源:快递鸟(4)、返回的物流跟踪信息按照发生的时间升序排列。 (5)、接口指令1002。1.1.3 系统级输入参数参数名称类型必须要求说明RequestDataStringR请求内容,JSON格式,和DataType一致EBusinessIDStr

2、ingR电商IDRequestTypeStringR请求指令类型:1002DataSignStringR数据内容签名DataTypeStringR请求、返回数据类型: 2-json; 1.1.4 应用级输入参数参数名称类型必须要求说明OrderCodeStringO订单编号ShipperCodeStringR快递公司编码LogisticCodeStringR物流单号1.1.5 返回结果参数参数名称类型必须要求说明EBusinessIDStringR电商用户IDOrderCodeStringO订单编号ShipperCodeStringR快递公司编码LogisticCodeStringR物流运单号

3、CallBackStringO用户标识SuccessBoolR成功与否ReasonStringO失败原因StateStringR物流状态: 2-在途中,3-签收,4-问题件Traces/物流轨迹详情AcceptTimeStringR时间AcceptStationStringR描述RemarkStringO备注1.1.6 JSON请求示例 "OrderCode": "", "ShipperCode": "SF", "LogisticCode": "118650888018"1.

4、1.7 JSON返回示例没有物流轨迹的 "EBusinessID": "1109259", "Traces": , "OrderCode": "", "ShipperCode": "SF", "LogisticCode": "118461988807", "Success": true, "Reason": null有物流轨迹的 "EBusinessID":

5、 "1109259", "OrderCode": "", "ShipperCode": "SF", "LogisticCode": "118461988807", "Success": true, "CallBack":"", "State": 3, "Reason": null, "Traces": "AcceptTime&q

6、uot;: "2014/06/25 08:05:37", "AcceptStation": "正在派件.(派件人:邓裕富,电话深圳 市", "Remark": null , "AcceptTime": "2014/06/25 04:01:28", "AcceptStation": "快件在 深圳集散中心 ,准备送往下一站 深圳 深圳市", "Remark": null , "Acc

7、eptTime": "2014/06/25 01:41:06", "AcceptStation": "快件在 深圳集散中心 深圳市", "Remark": null , "AcceptTime": "2014/06/24 20:18:58", "AcceptStation": "已收件深圳市", "Remark": null , "AcceptTime": "2014/06/2

8、4 20:55:28", "AcceptStation": "快件在 深圳 ,准备送往下一站 深圳集散中心 深圳市", "Remark": null , "AcceptTime": "2014/06/25 10:23:03", "AcceptStation": "派件已签收深圳市", "Remark": null , "AcceptTime": "2014/06/25 10:23:03"

9、, "AcceptStation": "签收人是:已签收深圳市", "Remark": null 1.2 物流轨迹(订阅查询)1.2.1 功能说明订阅查询接口是为用户提供的定制化服务,用户可将订单信息通过接口订阅给快递公司,快递公司更新轨迹后,将实时转换成标准接口形式,推送给用户,起到实时推送的作用,提高效率。同时用户订阅的数据还能选择是否通知快递员上门,实现在线下单功能。1.2.2 接口规则 (1)、订单接收的信息(分给了的网点,业务员的信息),会通过推送接口推给客户。客户需要按要求实现接口。 (2)、仅支持Json格式。(3)、请

10、求指令1008。(4)、测试接口地址:http:/testapi.kdniao.cc:8081/api/dist(5)、联调通过后请更换为正式地址:http:/api.kdniao.cc/api/dist(6)、分发及订阅接口需要客户方实现回调接口,回调RequestType(1008)1.2.3 系统级输入参数参数名称类型必须要求说明RequestDataStringR请求内容为JSON格式 EBusinessIDStringR电商IDRequestTypeStringR请求指令类型:1008DataSignStringR数据内容签名DataTypeStringR请求、返回数据类型:2-js

11、on;1.2.4 应用级输入参数参数名称类型是否必须描述CallBackStringO用户自定义回调信息MemberIDStringO会员标识(备用字段)CustomerNameStringO电子面单客户账号(与快递网点申请)CustomerPwdStringO电子面单密码SendSiteStringO收件网点标识ShipperCodeStringR快递公司编码LogisticCodeStringR快递单号OrderCodeStringO订单编号MonthCodeStringO月结编码PayTypeIntO邮费支付方式:1-现付,2-到付,3-月结,4-第三方支付ExpTypeStringO快

12、递类型:1-标准快件CostDoubleO寄件费(运费)OtherCostDoubleO其他费用ReceiverCompanyStringO收件人公司NameStringO收件人TelStringO电话MobileStringO手机PostCodeStringO收件人邮编ProvinceNameStringO收件省(如广东省,不要缺少“省”)CityNameStringO收件市(如深圳市,不要缺少“市”)ExpAreaNameStringO收件区(如福田区,不要缺少“区”或“县”)AddressStringO收件人详细地址SenderCompanyStringO发件人公司NameStringO

13、发件人TelStringO发件人电话MobileStringO发件人手机PostCodeStringO发件人邮编ProvinceNameStringO发件省(如广东省,不要缺少“省”)CityNameStringO发件市(如深圳市,不要缺少“市”)ExpAreaNameStringO发件区(如福田区,不要缺少“区”或“县”)AddressStringO发件详细地址StartDateStringO上门取货时间段:"yyyy-MM-dd HH:mm:ss"格式化,本文中所有时间格式相同EndDateStringOWeightDoubleO物品总重量kgQuantityIntO件

14、数/包裹数VolumeDoubleO物品总体积m3RemarkStringO备注IsNoticeIntO是否分发到快递公司:1-不分发;0-分发.默认为0AddServiceNameString0增值服务名称ValueString0增值服务值CustomerIDString0客户标识(选填)CommodityGoodsNameStringO商品名称GoodsCodeStringO商品编码GoodsquantityIntO件数GoodsPriceDoubleO商品价格GoodsWeightDoubleO商品重量kgGoodsDescStringO商品描述GoodsVolDoubleO商品体积m3

15、1.2.5 返回结果参数l 同步返回参数名称类型必须要求说明EBusinessIDStringR电商用户IDUpdateTimeStringR时间SuccessBoolR成功与否:true,falseReasonStringO失败原因EstimatedDeliveryTimeStringO订单预计到货时间yyyy-mm-dd注:订单分发会自动触发运单订阅推送1.2.6 JSON请求示例 "ShipperCode":"SF", "OrderCode":"SF201608081055208281", "Log

16、isticCode":"3100707578976", "PayType":"1", "ExpType":"1", "CustomerName":"", "CustomerPwd":"", "MonthCode":"", "IsNotice":"0", "Sender": "Name":&

17、quot;1255760", "Tel":"", "Mobile":"quot;, "ProvinceName":"广东省", "CityName":"深圳市", "ExpAreaName":"福田区", "Address":"测试地址" , "Receiver": "Name":"1

18、255760", "Tel":"", "Mobile":"quot;, "ProvinceName":"广东省", "CityName":"深圳市", "ExpAreaName":"龙华新区", "Address":"测试地址2" , "Commodity": "GoodsName":"

19、;书本" 1.2.7 JSON返回示例 "EBusinessID": "1151847", "UpdateTime": "2016-08-09 16:42:38", "Success": true, "Reason": "" "EstimatedDeliveryTime":"2016-8-12"1.2.8 C# 对接demousing System;using System.Collections.Gene

20、ric;using System.Linq;using System.Text;using System.Web;using System.Net;using System.IO; namespace KdGoldAPI public class KdApiSearchDemo /电商ID private string EBusinessID = "1237100" /电商加密私钥,注意保管,不要泄漏 private string AppKey = "518a73d8-1f7f-441a-b644-33e77b49d846" /请求url private

21、 string ReqURL = "http:/api.kdniao.cc/Ebusiness/EbusinessOrderHandle.aspx" / <summary> / Json方式 查询订单物流轨迹 / </summary> / <returns></returns> public string getOrderTracesByJson() string requestData = "'OrderCode':'','ShipperCode':'SF&#

22、39;,'LogisticCode':'589707398027'" Dictionary<string, string> param = new Dictionary<string, string>(); param.Add("RequestData", HttpUtility.UrlEncode(requestData, Encoding.UTF8); param.Add("EBusinessID", EBusinessID); param.Add("RequestType&

23、quot;, "1002"); string dataSign = encrypt(requestData, AppKey, "UTF-8"); param.Add("DataSign", HttpUtility.UrlEncode(dataSign, Encoding.UTF8); param.Add("DataType", "2"); string result = sendPost(ReqURL, param); /根据公司业务处理返回的信息. return result; / <s

24、ummary> / XML方式 查询订单物流轨迹 / </summary> / <returns></returns> public string getOrderTracesByXml() string requestData = "<?xml version="1.0" encoding="utf-8" ?>" + "<Content>" + "<OrderCode></OrderCode>" + &q

25、uot;<ShipperCode>SF</ShipperCode>" + "<LogisticCode>589707398027</LogisticCode>" + "</Content>" Dictionary<string, string> param = new Dictionary<string, string>(); param.Add("RequestData", HttpUtility.UrlEncode(requestData

26、, Encoding.UTF8); param.Add("EBusinessID", EBusinessID); param.Add("RequestType", "1002"); string dataSign = encrypt(requestData, AppKey, "UTF-8"); param.Add("DataSign", HttpUtility.UrlEncode(dataSign, Encoding.UTF8); param.Add("DataType",

27、"1"); string result = sendPost(ReqURL, param); /根据公司业务处理返回的信息. return result; / <summary> / Post方式提交数据,返回网页的源代码 / </summary> / <param name="url">发送请求的 URL</param> / <param name="param">请求的参数集合</param> / <returns>远程资源的响应结果</re

28、turns> private string sendPost(string url, Dictionary<string, string> param) string result = "" StringBuilder postData = new StringBuilder(); if (param != null && param.Count > 0) foreach (var p in param) if (postData.Length > 0) postData.Append("&"); p

29、ostData.Append(p.Key); postData.Append("="); postData.Append(p.Value); byte byteData = Encoding.GetEncoding("UTF-8").GetBytes(postData.ToString(); try HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); request.ContentType = "application/x-www-form-urlencoded&qu

30、ot; request.Referer = url; request.Accept = "*/*" request.Timeout = 30 * 1000; request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)" request.Method = "POST" r

31、equest.ContentLength = byteData.Length; Stream stream = request.GetRequestStream(); stream.Write(byteData, 0, byteData.Length); stream.Flush(); stream.Close(); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); Stream backStream = response.GetResponseStream(); StreamReader sr = new S

32、treamReader(backStream, Encoding.GetEncoding("UTF-8"); result = sr.ReadToEnd(); sr.Close(); backStream.Close(); response.Close(); request.Abort(); catch (Exception ex) result = ex.Message; return result; /<summary> /电商Sign签名 /</summary> /<param name="content">内容</param> /<param name="keyValue">Appkey</param> /<param name="charset">URL编码 </param> /<returns>DataSign签名</returns> private string encrypt(String content, String keyValue, String charset) if (keyValue != null) return base64(MD5

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论