顺丰快递对于商家和个人的隐私保护较为严格,对于操作频次高的用户会进行多次验证码确认信息和服务安全。如果需要大量地邮寄顺丰快递以及查询顺丰的快递物流轨迹信息,必须对接顺丰官方的寄件和查询API接口。企业、电商、微商、快递网点、代收点等经常性寄件的用户可以通过顺丰快递寄件API接口可以满足寄件,快递公司到家收件的需求。
一种是开发者自主对接顺丰的开放平台接口。在顺丰丰桥上先注册账户后,申请成为开发者后,再根据顺丰的文档要求对接。然而,这种技术对接方案的整个流程较为繁琐冗长,需要一个个地去对接顺丰的各个相应服务的接口。即使对于有开发能力的企业来说,整个开发接入流程也需要一个星期以上的时间才能完成。对于开发和维护能力有限的优先的企业而言,这可能并不是最优解。
还有一种方式就是通过顺丰官方合作的第三方快递寄件API接口技术服务商对接(例如快递100API)。这种技术方案也更适合需要接入多家快递公司,开发和维护接口能力有限的企业。
顺丰商家寄件服务是专为寄件企业提供的一套解决方案。通过顺丰快递商家寄件服务接口,可以满足企业、电商、微商、快递网点、代收点等经常性寄件用户预约寄件,顺丰快递公司网店到指定地点收件的需求。快递100提供的商家寄件接口支持顺丰、德邦、京东、极兔、圆通、申通和中通等公司的。
若需要个人的预约寄件服务,可对接顺丰快递C端寄件接口。举个例子,这种API接口可接入商家或者企业提供给客户的退换货入口,提供给客户预约快递到家取件退货或者换货,便于商家企业退换货的物流管理。
1、 品牌商家门店发货/调货场景,线下的门店发货,总部统一结算运费;
2、 发货量较小,没有和快递公司合作的微商/工作室发货;
3、 对发货时效性要求较高,需要预约快递员上门收货的场景,如生鲜配送、社区电商、商家退换货系统管理等。
提供统一格式的HTTP POST或GET调用接口,并返回统一格式JSON数据。
https://poll.kuaidi100.com/order/borderapi.do
请求参数:
| 参数名 | 是否必填 | 类型 | 说明 |
|---|---|---|---|
| method | 是 | string | 业务类型(默认:bOrder) |
| key | 是 | string | 授权码,请到快递100页面申请企业版接口获取 |
| sign | 是 | string | 32位大写签名,用于验证身份,按MD5 (param +t+key+ secret)的顺序进行MD5加密,不需要加上“+”号。secret在企业管理后台获取 |
| t | 是 | string | 时间戳如:1576123932000 |
| param | 是 | param | 由其他字段拼接 |
param数据结构:
| 参数名 | 是否必填 | 类型 | 说明 |
|---|---|---|---|
| kuaidicom | 是 | string | 快递公司的编码,一律用小写字母,见《快递公司编码》 |
| recManName | 是 | string | 收件人姓名 |
| recManMobile | 是 | string | 收件人的手机号,手机号和电话号二者其一必填 |
| recManPrintAddr | 是 | string | 收件人所在完整地址,如广东深圳市深圳市南山区科技南十二路2号金蝶软件园 |
| sendManName | 是 | string | 寄件人姓名 |
| sendManMobile | 是 | string | 寄件人的手机号,手机号和电话号二者其一必填 |
| sendManPrintAddr | 是 | string | 寄件人所在的完整地址,如广东深圳市深圳市南山区科技南十二路2号金蝶软件园B10 |
| callBackUrl | 是 | string | callBackUrl订单信息回调地址 |
| cargo | 否 | string | 物品名称,例:文件。当kuaidicom=jd,yuantong时,必填 |
| payment | 否 | string | 支付方式,SHIPPER: 寄付(默认)。不支持到付 |
| serviceType | 否 | string | 业务类型,默认为标准快递,各快递公司业务类型对照参考:七、业务类型参数表 |
| weight | 否 | string | 物品总重量KG,不需带单位,例:1.5 |
| remark | 否 | string | 备注 |
| salt | 否 | string | 签名用随机字符串,用于验证签名sign。salt值不为null时,推送数据将包含该加密签名,加密方式:md5(param+salt)。注意: salt值为空串时,推送的数据也会包含sign,此时可忽略sign的校验。 |
| dayType | 否 | string | 预约日期,例如:今天/明天/后天 |
| pickupStartTime | 否 | string | 预约起始时间(HH:mm),例如:09:00,顺丰必填 |
| pickupEndTime | 否 | string | 预约截止时间(HH:mm),例如:10:00,顺丰必填 |
| valinsPay | 否 | string | 保价额度,单位:元 |
| passwordSigning | 否 | string | 是否口令签收,Y:需要 N: 不需要,默认值为N(德邦快递专属参数) |
| op | 否 | string | 是否开启订阅功能 0:不开启(默认) 1:开启 说明开启订阅功能时:pollCallBackUrl必须填入 此功能只针对有快递单号的单 |
| pollCallBackUrl | 否 | string | 如果op设置为1时,pollCallBackUrl必须填入,用于跟踪回调 |
| resultv2 | 否 | string | 添加此字段表示开通行政区域解析功能 。 0:关闭(默认) 1:开通行政区域解析功能以及物流轨迹增加物流状态名称 4:开通行政解析功能以及物流轨迹增加物流高级状态名称、状态值并且返回出发、目的及当前城市信息(详见:快递信息推送接口文档) |
| returnType | 否 | string | 面单返回类型,默认为空,不返回面单内容。10:设备打印,20:生成图片短链回调。 |
| siid | 否 | string | 设备码,returnType为10时必填 |
| tempid | 否 | string | 模板编码,通过管理后台的电子面单模板信息获取 ,returnType不为空时必填 |
| printCallBackUrl | 否 | string | 打印状态回调地址,returnType为10时必填 |
| 字段 | 类型 | 说明 | 备注 |
|---|---|---|---|
| result | boolean | 提交结果 | true提交成功,false失败 |
| returnCode | string | 返回编码 | |
| message | string | 返回报文描述 | |
| data | data |
data数据结构
| 字段 | 类型 | 说明 | 备注 |
|---|---|---|---|
| taskId | string | 任务ID | |
| orderId | string | 订单ID | |
| kuaidinum | string | 快递单号 | |
| eOrder | string | 快递面单附属属性,根据各个快递公司返回属性 |
eOrder数据结构
| 字段 | 类型 | 说明 | 备注 |
|---|---|---|---|
| bulkpen | string | 大头笔 | 用于显示于电子面单上规定位置,非必需,是否有值取决于快递公司 |
| orgCode | string | 始发地区域编码 | |
| orgName | string | 始发地/始发网点名称 | |
| destCode | string | 目的地区域编码 | |
| destName | string | 目的地/到达网点 | |
| orgSortingCode | string | 始发分拣编码 | |
| orgSortingName | string | 始发分拣名称 | |
| destSortingCode | string | 目的分栋编码 | |
| destSortingName | string | 目的分栋中心名称 | |
| orgExtra | string | 始发其他信息 | |
| destExtra | string | 目的其他信息 | |
| pkgCode | string | 集包编码 | |
| pkgName | string | 集包地名称 | |
| road | string | 路区 | |
| qrCode | string | 二维码 | |
| kdComOrderNum | string | 快递公司订单号 | |
| expressCode | string | 快递业务类型编码 | |
| expressName | string | 快递业务类型名称 | |
| waterMark | string | 水印 | |
| agingName | string | 时效 | |
| abFlag | string | 电子产品类型图标 | |
| proCode | string | 时效产品图标 | |
| codingMapping | string | 进港映射码 | |
| codingMappingOut | string | 出港信息 | |
| printIcon | string | 图标名称 | |
| destRouteLabel | string | 目的地(路由信息) | |
| twoDimensionCode | string | 二维码信息 | |
| xbFlag | string | 顺丰面单标识,快运必填,xbFlag=1,打印SX标;xbFlag=2,打印融通标 |
注意:eOrder实际返回的字段各家快递公司不同,以实际返回为准
请求参数示例
method = bOrder
key = ******
sign = 4BBDE07660E5EFF90873642CFAE9A8DD
t = 1647258957705
param = {
"kuaidicom": "yuantong",
"recManName": "王超",
"recManMobile": "13842569988",
"recManPrintAddr": "广东深圳市深圳市南山区科技南十二路2号金蝶软件园",
"sendManName": "王大",
"sendManMobile": "13842569988",
"sendManPrintAddr": "广东深圳市深圳市南山区科技南十二路2号金蝶软件园B10",
"cargo": "文件",
"callBackUrl": "http: //www.baidu.com",
"payment": "SHIPPER",
"serviceType": "标准快递",
"weight": "1",
"remark": "",
"salt": "",
"dayType": "",
"pickupStartTime": "",
"pickupEndTime": "",
"passwordSigning": "Y",
"valinsPay": "",
"op": "0",
"pollCallBackUrl": "",
"resultv2": "0",
"returnType": "",
"siid": "",
"tempid": "",
"printCallBackUrl": ""
}
返回结果示例
{
"result": true,
"returnCode": "200",
"message": "提交成功",
"data": {
"taskId": "", // 任务ID
"orderId": "" // 订单ID
"kuaidinum": "" // 快递单号
"eOrder": "[\"destName\":null,\"orgName\":null,\"pkgCode\":null,\"pkgName\":null,\"bulkpen\":\"上海-S33-K27-P\",\"orgExtra\":null}]"
}
}
说明:
| 信息代码 | 信息内容描述 | 原因及建议处理方式 |
|---|---|---|
| 200 | 提交成功 | 提交成功 |
| 400 | 参数错误等 | 请根据技术文档请求,注意参数类型及是否必填 |
| 500 | 服务器错误 | 快递100的服务器出理间隙或临时性异常,有时如果因为不按规范提交请求,比如快递公司参数写错等,也会报此错误 |
| 501 | 重复提交 | 重复提交了请求 |
| 503 | 验证签名失败 | 请检查加密方式,param + t + key + secret 的顺序进行MD5加密,加密后字符串转大写,不用加上“+”号 |
| 600 | 您不是合法的用户(即授权Key出错) | 账号无可用余额,需要充值 |
| 601 | KEY已过期 | 账号无可用余额,需要充值 |
| 700 | 错误的回调地址 | 检查回调地址,或者联系快递100工作人员 |
我有用于控制用户任务的Rails5API项目,我有以下错误,但并非总是针对相同的Controller和路由。ActionController::RoutingError:uninitializedconstantApi::V1::ApiController我向您描述了一些我的项目,以更详细地解释错误。应用结构路线scopemodule:'api'donamespace:v1do#=>Loginroutesscopemodule:'login'domatch'login',to:'sessions#login',as:'login',via::postend#=>Teamroutessc
在应用开发中,有时候我们需要获取系统的设备信息,用于数据上报和行为分析。那在鸿蒙系统中,我们应该怎么去获取设备的系统信息呢,比如说获取手机的系统版本号、手机的制造商、手机型号等数据。1、获取方式这里分为两种情况,一种是设备信息的获取,一种是系统信息的获取。1.1、获取设备信息获取设备信息,鸿蒙的SDK包为我们提供了DeviceInfo类,通过该类的一些静态方法,可以获取设备信息,DeviceInfo类的包路径为:ohos.system.DeviceInfo.具体的方法如下:ModifierandTypeMethodDescriptionstatic StringgetAbiList()Obt
目录1.AdmobSDK下载地址2.将下载好的unityPackagesdk导入到unity里编辑 3.解析依赖到项目中
我正在使用Mandrill的RubyAPIGem并使用以下简单的测试模板:testastic按照Heroku指南中的示例,我有以下Ruby代码:require'mandrill'm=Mandrill::API.newrendered=m.templates.render'test-template',[{:header=>'someheadertext',:main_section=>'Themaincontentblock',:footer=>'asdf'}]mail(:to=>"JaysonLane",:subject=>"TestEmail")do|format|format.h
1.postman介绍Postman一款非常流行的API调试工具。其实,开发人员用的更多。因为测试人员做接口测试会有更多选择,例如Jmeter、soapUI等。不过,对于开发过程中去调试接口,Postman确实足够的简单方便,而且功能强大。2.下载安装官网地址:https://www.postman.com/下载完成后双击安装吧,安装过程极其简单,无需任何操作3.使用教程这里以百度为例,工具使用简单,填写URL地址即可发送请求,在下方查看响应结果和响应状态码常用方法都有支持请求方法:getpostputdeleteGet、Post、Put与Delete的作用get:请求方法一般是用于数据查询,
我正在尝试使用Ruby2.0.0和Rails4.0.0提供的API从imgur中提取图像。我已尝试按照Ruby2.0.0文档中列出的各种方式构建http请求,但均无济于事。代码如下:require'net/http'require'net/https'defimgurheaders={"Authorization"=>"Client-ID"+my_client_id}path="/3/gallery/image/#{img_id}.json"uri=URI("https://api.imgur.com"+path)request,data=Net::HTTP::Get.new(path
Rails相对较新。我正在尝试调用一个API,它应该向我返回一个唯一的URL。我的应用程序中捆绑了HTTParty。我已经创建了一个UniqueNumberController,并且我已经阅读了几个HTTParty指南,直到我想要什么,但也许我只是有点迷路,真的不知道该怎么做。基本上,我需要做的就是调用API,获取它返回的URL,然后将该URL插入到用户的数据库中。谁能给我指出正确的方向或与我分享一些代码? 最佳答案 假设API为JSON格式并返回如下数据:{"url":"http://example.com/unique-url"
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我的公司有一个巨大的数据库,该数据库接收来自多个来源的(许多)事件,用于监控和报告目的。到目前为止,数据中的每个新仪表板或图形都是一个新的Rails应用程序,在巨大的数据库中有额外的表,并且可以完全访问数据库内容。最近,有一个想法让外部(不是我们公司,而是姊妹公司)客户访问我们的数据,并且决定我们应该公开一个只读的RESTfulAPI来查询我们的数据。我的观点是-我们是否也应该为我们的自己
我读了"BingSearchAPI-QuickStart"但我不知道如何在Ruby中发出这个http请求(Weary)如何在Ruby中翻译“Stream_context_create()”?这是什么意思?"BingSearchAPI-QuickStart"我想使用RubySDK,但我发现那些已被弃用前(Rbing)https://github.com/mikedemers/rbing您知道Bing搜索API的最新包装器(仅限Web的结果)吗? 最佳答案 好吧,经过一个小时的挫折,我想出了一个办法来做到这一点。这段代码很糟糕,因为它是
这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:AmazonAPIlibraryforPython?我正在寻找一个AmazonAPI,它可以让我:按书名或作者查找书籍显示书籍封面获取有关每本书的信息(价格、评级、评论数、格式、页数等)Python或Ruby库都可以(我只想要最容易使用的库)。有什么建议么?我知道在SO上还有其他一些关于此的帖子,但这些API似乎很快就过时了。[几个月前我尝试了几个建议的Ruby库,但无法让它们中的任何一个工作。]