红包接口使用流程:登陆(摇摇啦平台)注册账号
发红包两种方式,一种是你直接做好一个链接给用户,他点了就领红包,另一种是你在你的交互过程中嵌入静默授权,获取到openid,然后随时在后端可以发红包。
配置:
apikey:参数签名密钥,不超过32字节
对接ip:调用红包创建接口的服务器IP,可写多个,用逗号分隔
1.红包创建接口(单红包)
https://www.yaoyaola.net/exapi/hbticket
参数说明(GET):
uid:(必填)客户编号:系统分配(每个账号唯一)
type:(必填) 红包类型,0使用红包接口,1表示使用企业付款接口
如果使用企业付款,金额可以大于200元
企业付款的通知消息可自定义wishing,不显示title和sendname
money:(必填)红包金额,单位为分,不能低于30
orderid:(必填)自定义订单号,不超过60字节
reqtick:(必填)请求时间戳,单位为秒,与北京标准时间误差不能超过30秒
expire:红包超时时间,单位为秒,不指定则默认60秒
sign:(必填)参数验证签名 md5(uid+type+orderid+money+reqtick+apikey),共32字节,字母都为小写
title:红包活动名称(不能超过10个汉字或32个字符)
sendname:红包发送方名称(不能超过10个汉字或32个字符)
wishing:红包祝福语
rurl:红包领取结果跳转url,用于给用户显示客户的自定义页面,通过GET方式传送三个参数(以下三行为平台传给rurl的参数),如果rurl为空,则跳转至系统默认结果页面
ticket: 红包回执
retmoney: 红包领取金额,单位为分,0为领取失败
retmsg: 返回信息
cburl:服务器通知url,参数形式同rurl,用户红包领取成功时回调此url,失败则不回调,由客户方在红包超时后主动查询确认结果。
PHP示例代码:$apikey = "xxxxxxxxxxxxx";
$uid = 1;
$type = 0;
$money = 50;
$orderid = rand(1000,9999).rand(1000,9999).rand(1000,9999);
$reqtick = time();
$signstr = $uid.$type.$orderid.$money.$reqtick.$apikey;
$sign = md5($signstr);
$url = "https://www.yaoyaola.net/exapi/hbticket?uid=".$uid."&type=".$type."&orderid=".$orderid."&money=".$money."&
reqtick=".$reqtick."&expire=3600&sign=".$sign."&title=恭喜发财&sendname=千跃科技&wishing=心想事成";
$result = httpGet($url);
echo $result."\n";
请求示例:https://www.yaoyaola.net/exapi/hbticket?uid=1&type=0&orderid=657812195242&money=100&reqtick=1515133732&sign=7ad5e4da870203ed6c15bda5a60d06a4&title=恭喜发财&sendname=千跃科技&wishing=心想事成
返回结果:{"errcode":"0","errmsg":"success","ticket":"a06aba6515bbdb776f83fa74199bd3e9"}
2. 红包领取接口(单红包)
通过上面返回的ticket,拼装出红包领取链接: https://www.yaoyaola.net/exapi/gethb/10000013?ticket=a06aba6515bbdb776f83fa74199bd3e9 ,用户点击后,则立刻领取红包,注意如果没有指定超时时间,此链接有效时间默认为60秒.
如果要在小程序中打开领取,需要做如下操作:
1. 在小程序后台设置服务域名为www.yaoyaola.net
2. 联系平台将域名校验文件上传服务器
3. 将上面红包链接协议头http修改为https
3.授权跳转接口
https://www.yaoyaola.net/exapi/check_user/
参数说明(GET):
url:获取到openid后的跳转url,如果有带参数,可先对整个url做下urlencode编码
flag:0表示静默获取openid,1表示需要用户授权获取详细信息
示例:https://www.yaoyaola.net/exapi/check_user/10000013?url=https://www.yaoyaola.net/exapi/test.html&flag=0
跳转ulr示例:
test.html?ivtick=1547025023&u_openid=orsKq0c59kFgew2F2xfOWdRLQ-0M&encdata=3aae5867b37028491062d6f34e592772&userinfo=
跳转URL携带参数说明(GET):
ivtick:当前时间戳
u_openid:获取到的用户openid
encdata:签名验证信息,md5(apikey+openid+ivtick)
userinfo:flag=1时返回的用户详细信息,base64编码
4.红包直发接口
https://www.yaoyaola.net/exapi/SendRedPackToOpenid
参数说明(GET):
uid:客户编号:1 (同上)
type:红包类型,0使用红包接口,1表示使用企业付款接口
如果使用企业付款,金额可以大于200元
企业付款的通知消息只能显示sendname,不能显示活动名称和祝福语
money:红包金额,单位为分,不能低于30
orderid:自定义订单号
reqtick:请求时间戳
openid:用户openid,可通过上面check_user接口获取
sign:参数验证签名 md5(uid+type+orderid+money+reqtick+openid+apikey)
title:红包活动名称(不能超过10个汉字或32个字符)
sendname:红包发送方名称(不能超过10个汉字或32个字符)
wishing:红包祝福语
示例:https://www.yaoyaola.net/exapi/SendRedPackToOpenid?uid=1&type=0&orderid=793174198142&money=50&reqtick=1547025439&openid=orsKq0c59kFgew2F2xfOWdRLQ-0M&sign=a8f2333cd13153702db9b7a9bafc5b2f&title=恭喜发财&sendname=千跃科技&wishing=心想事成
成功返回:{"errcode":"0","errmsg":"","ticket":"f07bb87429ef4f33b9de...","retmoney":"50","retmsg":"发放成功"}