API文档 欢迎您回来我爱加盟

API文档

阅读对象

本文阅读对象:网站技术工程师(广告或任务平台或投票,调查平台或其他)集成我爱任务墙涉及的技术工程师,系统运维工程师及所有对我爱任务墙感兴趣的各站长朋友。

接口规则

传输方式 目前采用HTTP传输
提交方式 采用POST方法提交,加盟方请用POST接收
数据格式 我爱任务墙提交为数据为URL键值对,加盟方返回数据为文本且为success
字符编码 统一采用UTF-8字符编码
签名算法 MD5
签名算法 请求和接收数据均需要校验签名,详细方法请参考参数规定-签名sign
判断逻辑 先判断协议字段返回,再判断业务返回状态

接口的网址

接口的网址是由您提供的。在你添加网站时,填写的虚拟货币奖励发放接口URL。

比如:http://www.5iads.cn/return/5iads/woaiData.asp

参数规定

1.网站加盟appid

加盟方在新增加网站时,由我爱任务墙系统自动生成的编号,是唯一性的。

2.用户名username

由贵方网站提供的操作的用户账户,字符串string类型。长度在50个字符内。

3.佣金jmoney

佣金单位为金币,金币兑换比例:2000金币=1元。贵方网站接收到佣金后需要换算为贵站的比例。

4.任务编号taskid

任务编号表示操作的用户已经完成的任务的广告编号,类型为:数字int整型。

5.任务类型tasktype

任务类型,字符串string型,表示用户操作的广告是属于哪类的,我爱任务墙平台的类型有:浏览(browse),点击(click),任务(renwu),搜索(search),分享朋友圈(sharetimeline)。

6.时间戳time_stamp

标准北京时间,时区为东八区,自1970年1月1日 0点0分0秒以来的秒数。注意:部分系统取到的值为毫秒级,需要转换成秒(10位数字)。

7.随机数nonce_str

API接口协议中包含字段nonce_str,主要保证签名不可预测。我们推荐生成随机数算法如下:调用随机数函数生成,将得到的值转换为字符串。

8.交易编号trade_no

我爱任务墙系统内部交易号,字符串string类型。长度为22位字符,每个交易编号是唯一的,可用于加盟方发送查询服务用。

9.签名sign

签名生成的通用步骤如下:

第一步,设所有发送或者接收到的数据为集合M,将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序),使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA。

特别注意以下重要规则:

◆ 参数名ASCII码从小到大排序(字典序);

◆ 如果参数的值为空不参与签名;

◆ 参数名区分大小写;

◆ 验证调用返回或我爱任务墙主动通知签名时,传送的sign参数不参与签名,将生成的签名与该sign值作校验;

◆ API接口可能增加字段,验证签名时必须支持增加的扩展字段;

◆ 参数名ASCII码从小到大排序(字典序);

第二步,在stringA最后拼接上安全码appkey得到stringSignTemp字符串,并对stringSignTemp进行MD5运算,再将得到的字符串所有字符转换为大写,得到sign值signValue。

◆ 密钥key设置路径:我爱联盟平台(offer.5iads.cn)-->网站管理-->密钥设置

假设传送的参数如下:

						
  1. appid: 25AS9KEW2E
  2. username: woaitest
  3. jmoney: 40000
  4. taskid: 27056
  5. tasktype: click
  6. time_stamp:1544528741
  7. nonce_str: ibuaiVcKdpRxkhJA
  8. trade_no: 2018121116551478180235

第一步:对参数按照key=value的格式,并按照参数名ASCII字典序排序如下:

  1. stringA="appid=25AS9KEW2E&jmoney=40000&nonce_str=ibuaiVcKdpRxkhJAxkhJA&taskid=27056&tasktype=click&time_stamp=1544528741&trade_no=2018121116551478180235&username=woaitest"

第二步:拼接API密钥:

  1. stringSignTemp=stringA+"&appkey=192006250b4c09247ec02edce69f6a2d" //注:key为商户平台设置的密钥key
  2. sign=MD5(stringSignTemp)="acec0654b53d32afcf0ba42f39a8983e" //注:MD5签名方式

最后得到最终发送的数据:

						
  1. appid: 25AS9KEW2E
  2. username: woaitest
  3. jmoney: 40000
  4. taskid: 27056
  5. tasktype: click
  6. time_stamp:1544528741
  7. nonce_str: ibuaiVcKdpRxkhJA
  8. trade_no: 2018121116551478180235
  9. sign: acec0654b53d32afcf0ba42f39a8983e

加盟方返回的结果

加盟方接收到参数及参数值的,进行业务的判断,最终必须返回文本:success

加盟方回调返回数据:

					
  1. success

返回其它的任何数据都是失败的一次回调。

加盟方可以随时查看每一次的回调记录,路径:我爱联盟平台(offer.5iads.cn)-->网站信息-->回调记录

于对失败的回调用户可以根据需要重新发起回调。

商户回调API安全

在普通的网络环境下,HTTP请求存在DNS劫持、运营商插入广告、数据被窃取,正常数据被修改等安全风险。加盟平台回调接口使用HTTPS协议可以保证数据传输的安全性。所以我爱任务墙建议商户提供给我爱任务墙的各种回调采用HTTPS协议。

应用场景

用户完成操作后,浏览,点击,搜索都是即时将用户获得的奖励相关结果发送给加盟方平台。加盟方平台接口需要作接收处理,并返回应答。

对后台通知交互时,如果我爱任务墙收到加盟方的应答不是成功success或超时,我爱任务墙认为通知失败,我爱任务墙不会再发起请求,加盟方可以查看回调记录,手动发起请求。

推荐的做法是,当收到通知进行处理时,首先检查对应业务数据的状态,判断该通知是否已经处理过,如果没有处理过再进行处理,如果处理过直接返回结果成功。在对业务数据进行状态检查和处理之前,要采用数据锁进行并发控制,以避免函数重入造成的数据混乱。

加盟方系统对于通知结果的内容一定要做,防止数据泄漏导致出现“假通知”,造成资金损失。