# API文档
## 4.1获取快递仓库
* 接口地址:http://域名/index/api/kbtruetype
* 请求方式:post
* 请求参数:json格式
aipkey:登录会员中心获得
* 请求示例
~~~
{
"apikey": "CO8syB7pgK3kD99U"
}
~~~
* 返回数据
code 状态码 200-正常; 101- 报错
msg 提示信息
data 仓库信息数组
* 返回示例
```
{
"code": "200",
"msg": "success",
"data": [
{
"id": "1427",//仓库ID
"name": "圆通快递",//快递名称
"comm": "5432134",//快递描述
"price": "3.5",//价格
"address": {//仓库地址
"province": "黑龙江省",//省
"city": "大庆市",//市
"district": "大同区",//区
"address_info": "阿斯顿撒的撒"//地址详情
},
"plattype": [//支持单号平台
"TB",//淘宝菜鸟
"PDD",//拼多多电子
"JD"//京东无界
],
"gift": [//仓库支持的礼品数组
{
"id": "1264",//礼品id
"name": "信封实物走件(免签收)",//礼品名称
"comm": "4543",//礼品描述
"price": "0",//礼品价格
"weight": "0.1"//礼品默认重量
}
]
,
"sync": 1,//是否实时返回单号:1是,0否 ,注意非实时返回单号的仓库,使用实时购买接口购买,也不会返回快递单号,需要通过查询接口10分钟左右查询
}
]
}
```
## 4.2获取礼品接口
* 接口地址:http://域名/index/api/gifts
* 请求方式:post
* 请求参数:json格式
* 请求示例
~~~
{
"apikey": "CO8syB7pgK3kD99U"
}
~~~
* 返回数据
code 状态码 200-正常; 101- 报错
msg 提示信息
data 礼品信息数组
* 返回示例
~~~
{
"code": "200",
"msg": "success",
"data": [
{
"id": "1264",//礼品ID
"name": "信封实物走件(免签收)",//礼品名称
"comm": "4543",//礼品描述
"price": "0",//礼品价格
"weight": "0.1",//礼品默认重量
"kongbao_type": [//礼品支持的仓库地址数组
{
"id": "1479",//快递仓库ID
"name": "中通快递",//快递名称
"comm": "6567",//快递描述
"price": "3.7",//快递价格
"address": {//仓库地址
"province": "广东省",//省
"city": "茂名市",//市
"district": "信宜市",//区
"address_info": "东城区礼品仓"//地址详情
}
},
{
"id": "1480",//快递仓库ID
"name": "圆通快递",//快递名称
"comm": "789456",//快递描述
"price": "4.3",//快递价格
"address": {//仓库地址
"province": "北京市",//省
"city": "北京市",//市
"district": "东城区",//区
"address_info": "东城区礼品仓"//地址详情
}
}
]
}
]
}
~~~
* 返回数据
code 状态码 200-正常; 101- 报错
msg 提示信息
## 4.3礼品下单接口
* 接口地址:http://域名/index/api/giftxd
* 请求方式:post
* 请求参数:json格式
* 请求示例
由于礼品单业务上流出单比较特殊,为加快下单流程响应,优化减少用户下单等待时间,帮助第三方更快响应更稳定的出单号,我方API端与PC端现统一采取任务队列请求快递公司下单接口,所以快递单号非实时返回,后续可根据第三方系统的订单编号,在查询接口查询快递单号出单情况。
~~~
{
"apikey": "D7h1mBC6ha7kD9pR",
"gift": 1264,//礼品ID
"express": 1428,//快递仓库ID
"address":{//发货信息
"name": "张三",//发货人名称
"mobile": "15900159000"//发货人手机
},
"plattype":"TB",//单号类型 :TB:淘宝菜鸟,JD:京东无界,PDD:拼多多多电子,不传默认为淘宝菜鸟
"items":[//收货人信息
{
"out_order_no": "对接方的订单ID",//必填需要唯一性,可用于查询接口查询
"name": "李四",//收货人名称
"mobile": "13800138000",//收货人电话
"province": "河南省",//省
"city": "洛阳市",//市
"district": "西工区",//区
"info": "金谷园路888号",//地址
"zipcode": "471900"//邮编
}
]
}
~~~
* 返回数据
code 状态码 200-正常; 201-订单收货人信息校验错误; 101- 报错
msg 提示信息
* 返回示例
~~~
{
"code": 200,
"msg": "订单提交成功!",
"data": {
"order_no": "SBuy2020061454504899"
//订单编号,当前下单批次编号。在网站礼品管理菜单,用于人工订单编号查询
}
}
收货人校验错误:
{
"code": 201,
"msg": "out_order_no校验错误!",
"data": [
{
"outer_order_no": "321232423444",
"express_no": "订单321232423444 的手机号不是一个11位有效的手机号码,注意不要包含+、-符号"
}
]
}
普通校验错误:
{
"code": 101,
"msg": "发货人手机号不是一个11位有效的手机号码,注意不要包含+、-符号!",
"url": "/Cash/recharge.html"
}
~~~
## 4.4礼品查询接口
* 接口地址:http://域名/index/api/giftstatus
* 请求方式:post
* 请求参数:json格式
aipkey:登录会员中心获得
out_order_no:第三方订单编号
* 请求示例
~~~
{
"apikey": "CO8syB7pgK3kD99U",
"out_order_no": [321321,32132123,321324,32132125]
}
~~~
* 返回数据
code 状态码 200-正常; 101- 报错
msg 提示信息
* 返回示例
~~~
{
"code": 200,
"msg": "查询成功",
"data": [
{
"note_no": "33444",//快递编号
"exp_status": 1,//已扫描 ,不可取消
"exp_msg": "",
"out_order_no": "321321"
},
{
"note_no": "",
"exp_status": 2,//已取消
"exp_msg": "",
"out_order_no": "32132123"
},
{
"note_no": "",
"exp_status": 0,//待处理,可取消
"exp_msg": "",
"out_order_no": "321324"
},
{
"note_no": "",
"exp_status": 3,//已购买,不可取消
"exp_msg": "",
"out_order_no": "32132125"
},
{
"note_no": "",
"exp_status": -1,//购买失败
"exp_msg": "该地区暂不支持派送!",//失败原因
"out_order_no": "32132125"
}
]
}
~~~
# 4.5取消接口
* 接口地址:http://域名/index/api/giftordercancel
* 请求方式:post
* 请求参数:json格式
aipkey:登录会员中心获得
out_order_no:订单编号
* 请求示例
~~~
{
"apikey": "Cr17zBe0gvrkDttS",
"out_order_no":"EFS000007641096"
}
~~~
* 返回数据
code 状态码 200-正常; 101- 报错
msg 提示信息
* 返回示例
~~~
{
"code": "200",
"msg": "订单取消成功"
"data":""
}
~~~
## 4.6礼品下单接口(实时返回单号,仅快递仓参数sync为1时有效)
* 接口地址:http://域名/index/api/giftsubmit
* 请求方式:post
* 请求参数:json格式
* 请求示例
由于较多人反馈需要实时返回礼品单的快递单号,现提供第三方直接请求快递公司实时返回单号接口。为了防止web服务器请求时间过长自动断开连接,该接口一次请求只能一个快递单,响应时间最长为60s,如果是批量下单请第三方做好轮训下单逻辑,以及判断。
~~~
{
"apikey": "WO8uzEG03fjkD99S",
"gift": 885,//礼品ID
"express": 4089,//快递仓库ID
"send_name": "张三",//发货人名称
"send_mobile": "86-13900159222",//发货人手机
"plattype":"JD",//单号类型 :TB:淘宝菜鸟,JD:京东无界,PDD:拼多多多电子,不传默认为淘宝菜鸟
"out_order_no": "321232423444",//必填需要唯一性,可用于查询接口查询
"rec_name": "李四",//收货人名称
"rec_mobile": "13800138000",//收货人电话
"rec_province": "河南省",//省
"rec_city": "洛阳市",//市
"rec_district": "西工区",//区
"rec_info": "金谷园路888号",//地址
"rec_zipcode": "471900"//邮编
}
~~~
* 返回数据
code 状态码 200-正常; 202-订单收货人信息校验错误; 101- 报错
msg 提示信息
* 返回示例
~~~
{
"code": 200,
"msg": "购买成功!",
"data": {
"express_no": "vrjlxhb42ujzs4",//快递号
"outer_order_no": "3212324234324",//三方订单号
"order_no": "G159465818805110149"//平台订单号
}
}
校验错误:
{
"code": 202,
"msg": "第三方订单号重复,请不要重复下单。订单编号【3212324234324】的快递号为:vrjlxhb42ujzs4",
"data": {
"outer_order_no": "3212324234324",
"express_no": "vrjlxhb42ujzs4"
}
}
普通校验错误:
{
"code": 101,
"msg": "发货人手机号不是一个11位有效的手机号码,注意不要包含+、-符号!",
"url": "/Cash/recharge.html"
}
~~~