@lonelinsky
2015-11-03T14:53:40.000000Z
字数 3661
阅读 639
API
瀚沄社区的电商服务主要依靠接入第三方电商来完成,为了方便大家的接入,特书写以下文档.
第三方平台在接入的时候需提供一个用户获取商户信息的url,并会获取到一个APPID和APPSECRET(目前以邮件告知,请务必妥善保存),瀚沄社区平台以此来验证第三方平台身份.
访问方向
第三方后台 -> 瀚沄社区服务
鉴权
无需鉴权
链接请求约定
http请求方式: GET
grant_type:获取凭证的时候此处填写client_credential
APPID和APPSECRET使用申请接入的时候分配的APPID和APPSECRET
链接返回约定
{
"status":",
"access_token":"ACCESS_TOKEN",
"expires_in":24 #单位是小时
}
{
"status":"ERROR",
"errcode":40013;
"errmsg":"invalid op"
}
用于第三方商户获取瀚沄社区后台IP列表,用于简单鉴权
链接地址
http://community.dreamlabchina.com/api/getcallbackip?access_token=ACCESS_TOKEN
访问方向
第三方商户 -> 瀚沄社区后台
鉴权
通过access_token鉴权
链接请求约定
请求方式:GET
链接返回约定
{
"status":"OK",
"ip_list":["127.0.0.1",...] #ip列表
}
{
"status":"ERROR",
"errcode":40013;
"errmsg":"invalid op"
}
主要用于瀚沄社区后台从商户处获取商品信息
链接地址
此处链接地址由第三方商户在申请接入时提供
访问方向
瀚沄社区 -> 第三方商户
鉴权
第三方商户可以根据瀚沄服务器的IP地址进行鉴权
链接请求约定
http请求方式: GET
链接返回约定
{
"status":"OK",
"store":{
"name": 商家名称,
"addr": 商家地址,
"email": 客服邮箱,
"hotline": 客服电话
},
"promotion":[{ 优惠
"promotion_pic_link":url, 优惠图片链接
"promotion_link":url 优惠链接,指向第三方商户页面
},...],
"order_url":下单地址,
"comment_url":评价地址,
"goods":{
"goods_num":number,
"goods_list":[{id, pic, desc, price, detail_url,},...]
}
}
{
"status":"ERROR",
"errcode":40013;
"errmsg":"invalid op"
}
主要用于第三方平台通知瀚沄社区后台商户信息发生变化,瀚沄社区后台在得知变更后会重新拉取相关数据
访问方向
第三方平台 -> 瀚沄社区后台
鉴权
access_token
请求约定
请求方式: GET
请求参数:
event_type 事件类型
access_token 用于鉴权的token
appid 用于鉴别第三方appid
响应约定
{
"status":"OK"
}
{
"status":"ERROR",
"errcode":40013;
"errmsg":"invalid op"
}
商品详情页面由瀚沄社区后台在用户访问相关商品的时候访问第三方商户后台获取
链接地址
由商户信息中,detail_url提供
http://detail_url/
访问方向
瀚沄社区 -> 第三方
鉴权
第三方商户可以根据瀚沄服务器IP鉴权
链接请求约定
http请求方式: GET
链接返回约定
{
"id":商品ID,
"class_name": 分类名称(标题名),
"pic":图片url,
"desc":商品简述,
"size":商品规格
"price":商品单价,
"adv":商品宣传语,
"avail_time":可用时间列表,
"store": {
name:商家名称,
addr:商家地址,
logo:商家logo url
}
"detail":商品详情,
"payed_num":已购买数量
}
avail_time使用如下约定,以数组形式给出,共两个元素,第一个表示工作日,第二个表示周末,元素定义为起始时间|结束时间|选择时间间隔|最少等待时间
如周末或者周内不提供服务只需要把对应字符串置空即可,如周内和周末服务时间相同,需要填写两次. 对于不需要此时间的商户可以直接把数组置空.
例如:
["8|20|2|2", "10|18|2|2"]
表示工作日每天8-20点提供服务,选择时间间隔为2小时,最早可用时间至少为当前2小时后,周末每天10-18点提供服务,选择时间间隔为2小时,最早可用时间至少为未当前2小时后
["8|20|2|2", ""]
表示只在工作日可用
["", "8|20|2|2"]
表示只在周末可用
{
"status":"ERROR",
"errcode":40013;
"errmsg":"invalid op"
}
用于第三方通知瀚沄社区后台商品详情发生变化,例如价格/服务时间等.
访问方向
第三方平台 -> 瀚沄社区后台
鉴权
access_token
请求约定
请求方式: GET
请求参数:
event_type 事件类型
响应约定
{
"status":"OK"
}
{
"status":"ERROR",
"errcode":40013;
"errmsg":"invalid op"
}
用于瀚沄社区后台向第三方商户下单
访问方向
瀚沄社区 -> 第三方商户
链接
此链接地址在获取商户信息时获得.
鉴权
第三方商户可以根据瀚沄服务器IP鉴权
链接请求约定
"order_info":{
"order":{
"id":订单id,
"price":订单总价,
"delivery_price":配送价格,
"time":订单时间,
"request_time":预期配送/服务配送时间,
},
"goods":[{
"id":商品ID,
"price":商品价格,
"count":商品数量,
},...
],
"customer":{
name: 客户名称,
phone: 客户电话,
addr: 客户地址,
},
}
其中request_time
目前只对服务类产品有效,实物类商品的提供上可以忽略该参数
链接返回约定
{
"status":"OK",
}
{
"status":"ERROR",
"errcode":40013,
"errmsg":"invalid operation"
}
用于第三方回调更新订单状态
链接地址
http://community.dreamlabchina.com/api/notify/
访方向
第三方商户 -> 瀚沄社区后台
鉴权
通过access_token进行
链接请求约定
访问方式: POST
访问内容:
"order": {
"order_id":订单编号(来自于瀚沄社区下单的id;
"order_state":订单状态,
"time":订单状态变更时间,
"request_time":商家和客户线下协商的时间
},
"access_token": ACCESS_TOKEN
order_state
包括 配送中, 已完成
request_time
在商家和用户协商后,可以由商家发起修改
链接返回约定
{
"status":"OK"
}
{
"status":"ERROR",
"errcode":40013;
"errmsg":"invalid op"
}
用于瀚沄社区平台向第三方商户反馈订单评价情况
链接地址
从商户信息中获取
访问方向
瀚沄社区 -> 第三方商户
鉴权
第三方商户可以根据瀚沄服务器IP鉴权
链接请求约定
comment:{
order_id:订单号,
"detail":评价内容,
"stars":评价星级
}
评价星级为1-5
链接返回约定
{
"status":"OK"
}
{
"status":"ERROR",
"errcode":40013;
"errmsg":"invalid op"
}