在线检测接口V6(version: 602)
2023.12.18 15:54:44
接口说明
本接口是智能风控服务的在线检测接口,需配合智能风控SDK使用,当SDK获取token后,将token传入该接口获取风险识别结果,详情请参考使用教程。该接口为实时检测接口,同步返回检测结果,当前接口版本为V6,version: 602。
历史子版本参考600、601。更新日志参考V6版本接口更新日志。
老版本参考在线检测接口V5和在线检测接口V4。
鉴权说明
易盾智能风控服务使用签名认证方法对接口进行鉴权,所有接口每一次请求都需要包含签名信息(signature 参数),以验证用户身份,防止信息被恶意篡改。目前支持MD5签名算法,详细信息请参见接口鉴权。
接入须知
- 如果您没有从客户端智能风控SDK获取到token或者获取到的token是null值,依然建议在业务场景节点(SDK埋点位置,如注册场景)调用检测接口。
- 请根据接口返回的风险等级进行相应业务处置,为了保障处置动作依据完备,如需对用户进行封号,建议结合用户/玩家的业务数据进行二次判断,或者与易盾技术人员进行二次确认,以确保准确无误。
- 请控制接口调用频率,默认qps为1000,频率过高,可能会超过频率限制,导致接口调用失败。上线前有需要提升qps需要可以联系易盾商务。
请求说明
请求地址
名称 | 值 |
---|---|
HTTP URL | http://ir-open.dun.163.com/v6/risk/check |
HTTP Method | POST |
请求头
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
Content-Type | String | 是 | 固定值:"Content-Type:application/json" |
请求参数
部分产品相关参数请用账号登陆易盾官网控制台获取参考
请求参数包括:公共参数和私有参数。其中,公共参数如下:
参数 | 类型 | 必填 | 参与签名计算 | 最小长度 | 最大长度 | 描述 |
---|---|---|---|---|---|---|
businessId | String | 是 | 是 | 10 | 32 | 每个业务接入时,会分配唯一的业务 ID。 |
secretId | String | 是 | 是 | 32 | 36 | 产品密钥,每个应用接入时,会分配secretId和私钥secretKey。 |
timestamp | Long | 是 | 是 | 13 | 13 | 接口调用时的UNIX时间戳,单位:毫秒,用于判断请求是否过期 |
nonce | String | 是 | 是 | 32 | 32 | 随机码,用于防止重放,固定长度32个字符,不能重复,建议使用UUID |
version | String | 是 | 是 | 3 | 3 | 当前页面接口版本号:602 |
signature | String | 是 | 否 | 32 | 32 | 使用 secretKey 生成的签名,用于身份验证,生成方法见接口鉴权 |
私有参数如下:
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
token | String | 是 | 15000 | 在客户端调用getToken服务后返回给客户端的检测凭证:token。 - 客户端到易盾网络正常情况时生成短token,长度根据平台不同有所区别: 32byte(web/小程序sdk)或40byte(android/ios/pc) - 网络质量不好或者域名被屏蔽情况下,生成离线token,平均长度在4k-8kb左右,长token和短token具有相同的检测效果,请勿对token进行截断 详情请查看客户端接入说明文档。 |
account | String | 是 | 256 | 用户账号标识,建议使用业务方用户的UID,标记用户的唯一身份。 |
roleId | String | 是 | 256 | 用户角色ID,适用于支持同一个账号下创建不同角色的业务(如游戏不同区服的角色)。 如无roleId,可传入固定值“1”,或与account相同的值。 |
nickname | String | 否 | 256 | 用户账号/角色的昵称。 |
ip | String | 是 | 64 | 用户的IP,或当前客户端业务事件发生时的客户端请求IP地址(ipv4格式),若无法拿到ip,可以传入一个定值,为了效果准确考虑,建议传入真实ip。 |
phone | String | 否 | 64 | 用户账号关联的手机号码(部分业务,账号名=手机号码),默认为国内手机号码。 如有海外手机号码,需要包含国家地区代码,格式为“+447410xxx186”(+44即为国家码)。 支持数据加密,请传入hash值(hash算法:md5(phone))。 |
String | 否 | 64 | 用户账号关联的电子邮箱地址,必须是有效的电子邮件格式,传入格式要求为: xx@××。 | |
registerTime | Long | 否 | 13(参数长度必须是13位) | 用户/角色注册、创建时间点。请传入时间戳,单位:毫秒。 注意:若传入该字段,系统会进行参数格式强校验,参数长度必须是13位,如:1689733747268。 |
registerIp | String | 否 | 64 | 用户/角色注册、创建时的IP地址,如有记录,可传入辅助进行风险判断。 |
level | String | 否 | 32 | 用户账号等级、财富等级等,有助于对不同等级用户设置分层策略,方便业务进行精细化安全运营。 注意:level 由业务自定义,风控系统除长度外不会有任何其他校验手段,请业务需要自行管理、维护 level 字典。 |
identity | String | 否 | - | 当前用户身份,有助于对不同身份用户设置分层策略,方便业务进行精细化安全运营。 注意:仅接收以下内容,若传入该字段,系统将会强制校验传入值合法性。 - visitor:游客 - commonUser:普通用户 - seniorUser:高级用户(如vip、主播) - other:其他身份 |
payUser | Boolean | 否 | - | 当前用户是否付费用户,有助于对用户设置分层策略。 注意:仅接收布尔值,若传入该字段,系统将会强制校验传入值合法性。 - true:付费用户 - false:非付费用户 |
verified | Boolean | 否 | - | 当前用户是否认证用户(实名/真人认证),有助于对不同安全等级用户设置分层策略。 注意:仅接收布尔值,若传入该字段,系统将会强制校验传入值合法性。 - true:认证用户 - false:非认证用户 |
activityId | String | 否 | 256 | 事件的细分标记,用于标记场景事件下的细分类别,如同样是促销活动,可用于区分:双十一促销、618促销;再如同样是邀请拼团活动,activityId标记本次邀请的唯一识别ID |
deviceId | String | 否 | 128 | 当前用户的设备ID。 注意:如果通过SDK模式接入,则可不传,优先使用SDK生成的设备ID,API模式下强烈建议传入。 |
sceneData | String | 是 | - | 请登陆易盾官网后台风控引擎-服务管理查看当前业务的场景类型,请求不同业务场景下,需要传入的场景数据存在差异,具体请看下述场景参数描述。不同场景接入说明 注意:如果接入场景为“其他”(即不指定某个具体的场景,或规范中的标准场景),则sceneData可传空"{ }"。 |
extData | String | 否 | 2048 | 根据业务定制需求,额外需要传入系统的信息,可用于配置业务定制的检测规则。 |
请求参数示例
{
"businessId": "a0bcmo3aa617x1n62tlhtragdd009wy1",
"secretId": "b0bcmo3aa617x1n62tlhtragdd009wy2",
"timestamp": 1701837991081,//传入时以当前时间为准,
"nonce": "c0bcmo3aa617x1n62tlhtragdd009wy3",
"version": "602",
"signature": "d0bcmo3aa617x1n62tlhtragdd009wy4",
"token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",//以客户端传递的token为准
"ip": "1.1.1.1",
"roleId": "xxxxxxx",
"account": "yyyyyyy",
"nickname": "zzzzzzz",
"level": "150",
"identity": "visitor",
"payUser": true,
"verified": false,
"deviceId": "381xfu028f2083u230fuc2",
"sceneData": "{\"loginType\":\"userPassword\",\"appChannel\":\"app_store\",\"registerDay\":999,\"hashPassword\":\"adfdafjk123kjfkljdaf\",\"identity\":\"visitor\",\"paidUser\":false,\"verifiedUser\":false}"
"extData": "{\"otherInfo\":\"其他字段信息\"}"
}
响应
响应结果
响应数据格式为:JSON。
响应头为:Content-Type:application/json,具体如下:
参数 | 类型 | 描述 |
---|---|---|
code | Integer | 响应码,正常情况下为200,异常时,见 附录响应码定义 |
msg | String | 响应码说明,正常情况下返回“ok”,异常时,见 附录响应码定义 |
desc | String | 响应信息描述,非必返,常见错误情况下会返回错误说明或错误参考文档 |
data | JSONObject | 返回数据,格式下表说明 |
参数 | 类型 | 说明 |
---|---|---|
riskLevel | Integer | 风险等级:0 正常,1 低风险,2 中风险,3 高风险,4 可信源。 风险等级只会返回一个,取本次命中的最高风险等级 |
hitInfos | List | 命中风险信息,例如:[{"type":"12401067","name":"环境风险-ROOT-通用","riskLevel":"风险等级"}]。 如果同时命中多个类型,则会返回全部命中风险信息。详细风险标签参考智能风控风险标签 |
∟ type | String | 风险标签type |
∟ name | String | 命中的风险标签对应的名称,命中的标签的上下级名称采用‘-’进行拼接 |
∟ riskLevel | Integer | 风险等级 |
taskId | String | 检测任务 ID,建议记录存储,便于后续数据查询验证。 |
sdkRespData | String | 风控检测结果加密数据,仅在token数据能成功解析时返回该字段,应用/游戏方可转交给风控 sdk 解析处理。 |
deviceId | String | 购买设备指纹功能后,check结果中才会包含deviceId。 |
matchedRules | List | 命中规则编号列表 |
matchedCustomRules | List | 命中自定义规则编号列表 |
deviceInfo | JSONObject | 设备信息, Android设备返回的字段见Androd设备信息,IOS设备返回字段见IOS设备信息 |
evidences | List | 证据信息 |
字段名称 | 类型 | 说明 |
---|---|---|
screenInfo | String | 屏幕信息 |
appVersion | String | app版本号 |
bootCount | Integer | 设备启动次数 |
chargeState | Integer | 充电状态 |
macRandom | Integer | 是否开启mac随机化,0:未随机化,1:随机化,2:未知,3:mac地址存在错误 |
screenBright | Integer | 屏幕亮度 |
checkAdb | Integer | adb是否开启,0:否,1:是 |
upTime | String | 手机已启动时间 |
osVersion | String | Android版本,如7.0,8.1.0 |
carrierName | String | 运营商 |
lockTime | Integer | 手机总锁屏时间 |
isFakeCam | Integer | 是否是虚拟摄像头,0:不是,1:是 |
phoneBrand | String | 手机品牌 |
firstSetupTime | String | 第一次安装时间 |
hasSim | Integer | 是否存在sim卡,0:无,1:有 |
model | String | 型号 |
isShareScreen | Integer | 投屏状态判断,0:不是,1:是 |
networkType | Integer | 网络连接类型,1:wifi,2:2g,3:3g,4:4g,5:5g |
batteryLevel | Integer | 当前电量信息 |
字段名称 | 类型 | 说明 |
---|---|---|
bootTime | String | 开机时间 |
totalDiskSpace | String | 硬盘大小,单位字节 |
auxo | Integer | 非完美越狱失效状态,0:未越狱,1:越狱,2:越狱失效 |
macSerialnumber | String | mac序列号 |
chargeStatus | String | 0:未开启电池权限,1:未充电,2:充电中,电池电量小于100,3:充电中,电池电量充满 |
deviceId | String | 客户端本地生产的设备 ID |
isCydiaSubstrate | Integer | 是否安装CydiaSubstrate,0:否,1:是 |
isAntiJailbreak | Integer | 是否有反越狱插件,0:否,1:是 |
totalMemory | String | 总内存,单位字节 |
osVersion | String | 手机操作系统版本 |
carrierName | String | 运营商名称 |
model | String | 手机型号 |
cpuUseRate | String | cpu 使用率 |
networkType | Integer | 网络连接类型,1:wifi,2:2g,3:3g,4:4g,5:5g |
batteryLevel | String | 当前电量信息 |
响应结果示例
- 识别结果正常时:
{
"code": 200,
"msg": "ok!",
"data": {
"riskLevel": 0,
"hitInfos": null,
"taskId":"b0bcmo3aa617x1n62tlhtragdd009wyr",
"sdkRespData":"CGgBEgbmiJDlip5aIKrJEIBN123NwfiE1gVma8U8Fv+hPCzbH9W1gVIVhWDs"
//购买设备指纹功能后,check结果中才会包含deviceId
"deviceId":"389xfu028f2083u230fuc2"
//设备信息
"deviceInfo": {
"screenInfo": "1080x1920",
"appVersion": "4.3.5",
"bootCount": 11,
"chargeState": 2,
"macRandom": 0,
"screenBright": 40,
"checkAdb": 1,
"upTime": "50461",
"osVersion": "8.1.0",
"carrierName": "",
"lockTime": "27246",
"isFakeCam": 0,
"phoneBrand": "vivo",
"firstSetupTime": "1702177115487",
"hasSim": -1,
"model": "vivo X9s",
"isShareScreen": 0,
"networkType": 1,
"batteryLevel": 47
}
},
"ok":true
}
- 识别结果异常时:
{
"code": 200,
"msg": "ok!",
"data": {
"riskLevel": 2,
"hitInfos": [
{
"type": "...",
"name": "xx风险-xxx-xxx",
"riskLevel": 1
},
{
"type": "...",
"name": "xx风险-xxx-yyy",
"riskLevel": 2
}
],
"taskId":"b0bcmo3aa617x1n62tlhtragdd009wyr",
"sdkRespData":"CGgBEgbmiJDlip5aIKrJEIBN123NwfiE1gVma8U8Fv+hPCzbH9W1gVIVhWDs",
//购买设备指纹功能后,check结果中才会包含deviceId
"deviceId":"389xfu028f2083u230fuc2",
//命中规则编号列表
"matchedRules": ["R20230228205054395", "R20230228211555767"],
// 命中自定义规则列表
"matchedCustomRules": ["R20230228205054395", "R20230228211555767"],
//设备信息
"deviceInfo": {
"bootTime": "2023-12-18 09:23:21",
"totalDiskSpace": "127870980096",
"auxo": 0,
"macSerialnumber": "",
"chargeStatus": "1",
"deviceId": "8b7be3bbd89417ae0167e08fdf4aaaaa",
"isCydiaSubstrate": 0,
"isAntiJailbreak": 0,
"totalMemory": "3849175040",
"osVersion": "16.5.1",
"carrierName": "--",
"model": "iPhone13,2",
"cpuUseRate": "0.21",
"networkType": 1,
"batteryLevel": "59"
}
// 证据信息
"evidences": ["证据", "证据"]
},
"ok":true
}
注意事项
- 当返回无数据时,可能原因包括数据处理延时、数据不存在;
- 自动封禁有风险,操作请谨慎,建议参考其他因素综合考虑。
响应返回码
响应返回码见:响应返回码
接入示例代码
开发工具集(SDK)接入
为方便 JAVA 开发者调试和接入API,我们提供了配套的开发工具集(SDK),用于简化API接入流程。SDK中各接口调用方式基本相同,接入方式统一,并提供了一些接口调用过程中常见的异常处理方案。以下介绍了SDK的使用流程,以及使用SDK的简单示例。
- 准备工作
准备步骤详见通用步骤
- 使用方法
该接口的使用方法可参考SDK demo
sceneData数据构建规范说明
易盾智能风控系统支持客户给予业务,不同场景下,回传给风控系统不同的检测数据,以期达到更好的检测效果。基于不同类型场景,易盾提供以下 sceneData 数据构建规范:
游戏反外挂
游戏反外挂
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
gameVersion | String | 否 | 32 | 游戏的版本号 |
assetVersion | String | 否 | 32 | 游戏的资源版本号 |
serverId | String | 否 | 64 | 当前游戏角色所在游戏区服的ID(所属服务器ID) |
serverName | String | 否 | 32 | 当前游戏角色所在游戏区服的名称(所属服务器名称) |
注册登录保护
注册
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
registerType | String | 是 | - | 注册方式,可选参数内容如下: - userPassword:用户名密码注册 - phoneAuth:手机号一键注册(包含短信验证码方式注册方式) - otherPlatformAuth:第三方平台授权注册(如微信授权注册等) - unknown:未知注册方式 |
registerChannel | String | 否 | - | 如果是“第三方平台授权注册”,可传入注册渠道,可选参数内容如下: - qq:qq授权注册 - weixin:微信授权注册 - alipay:支付宝授权注册 - weibo:微博授权注册 - other:未知/其他平台授权注册 |
inviterId | String | 否 | 128 | 如为邀请注册制,可填写邀请人的邀请码、账号ID等唯一标识信息 |
hashPassword | String | 否 | 128 | 加密后的用户密码 |
registerChannelMark | String | 否 | 128 | 如可获取注册流量来源平台/渠道(特别适用于通过web、小程序方式进行的注册),可传入平台/渠道的唯一识别码。如: - 腾讯平台:传入点击回调中的 click_id - 巨量平台:传入点击回调中的 CALLBACK_PARAM 可根据业务是否获取相关信息及是否需要根据表示进行检测决定是否传入此参数 |
gender | String | 否 | - | 注册用户的性别,如应用注册时有明确的性别信息,可通过此处传入。可选参数内容如下: - male - female |
appChannel | String | 是 | 32 | 用户使用的应用来源渠道(或者说是app的上架渠道),如用户是从GooglePlay下载应用,则可传入:googleplay。如业务无法获知当前应用的来源渠道,可传入:unknown |
登录
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
loginType | String | 是 | - | 当前用户登录方式,可选参数如下: - userPassword:使用用户名、密码登录 - phoneAuth:使用手机号码授权登录(包含短信验证码方式登录方式) - qq:qq授权登录 - weixin:微信授权登录 - alipay:支付宝授权登录 - weibo:微博授权登录 - other:未知/其他平台授权登录 |
appChannel | String | 是 | 32 | 用户使用的应用来源渠道(或者说是app的上架渠道),如用户是从GooglePlay下载应用,则可传入:googleplay。如业务无法获知当前应用的来源渠道,可传入:unknown |
registerDay | Long | 否 | 8 | 用户账号注册天数 |
hashPassword | String | 否 | 128 | 加密后的用户密码 |
identity | String | 是 | - | 区分用户在业务中的身份类型(通常可用于根据业务需要进行策略研究、布控),可传入参数包括: - visitor:游客身份 - commonUser:普通用户 - seniorUser:高级用户(如vip、主播、司机等) - other:未知/其他身份 |
paidUser | Boolean | 否 | - | 用于标记是否付费用户,以方便实施策略布控: - true:付费客户 - false:非付费客户 |
verifiedUser | Boolean | 否 | - | 用于标记是否经过实名/信息认证后的用户,以方便实施策略布控: - true:认证客户 - false:非认证客户 |
realUser | Boolean | 否 | - | 用于标记是否经过真人认证后的用户,以方便实施策略布控: - true:认证客户 - false:非认证客户 |
注册&登录
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
registerOrLogType | String | 是 | - | 注册或登录方式,可选参数内容如下: - userPassword:用户名密码注册或登录 - phoneAuth:手机号一键注册或登录(包含短信验证码方式注册方式) - otherPlatformAuth:第三方平台授权注册或登录(如微信授权注册等) - unknown:未知注册或登录方式 |
operationType | String | 是 | - | 标记本次行为属性,是注册还是登录 -register:本次行为为注册行为 -log:本次行为为登录行为 |
registerOrLogChannel | String | 否 | - | 如果是“第三方平台授权注册或登录”,可传入注册或登录渠道,可选参数内容如下: - qq:qq授权注册或登录 - weixin:微信授权注册或登录 - alipay:支付宝授权注册或登录 - weibo:微博授权注册或登录 - other:未知/其他平台授权注册或登录 |
inviterId | String | 否 | 128 | 如为邀请注册制,可填写邀请人的邀请码、账号ID等唯一标识信息 |
hashPassword | String | 否 | 128 | 加密后的用户密码 |
registerOrLogChannelMark | String | 否 | 128 | 如可获取注册流量来源平台/渠道(特别适用于通过web、小程序方式进行的注册),可传入平台/渠道的唯一识别码。如: - 腾讯平台:传入点击回调中的 click_id - 巨量平台:传入点击回调中的 CALLBACK_PARAM 可根据业务是否获取相关信息及是否需要根据表示进行检测决定是否传入此参数 |
gender | String | 否 | - | 注册用户的性别,如应用注册时有明确的性别信息,可通过此处传入。可选参数内容如下: - male - female |
appChannel | String | 是 | 32 | 用户使用的应用来源渠道(或者说是app的上架渠道),如用户是从GooglePlay下载应用,则可传入:googleplay。如业务无法获知当前应用的来源渠道,可传入:unknown |
registerDay | Long | 否 | 8 | 如本次行为为登录,则传入用户账号注册天数 |
paidUser | Boolean | 否 | - | 用于标记是否付费用户,以方便实施策略布控: - true:付费客户 - false:非付费客户 |
verifiedUser | Boolean | 否 | - | 用于标记是否经过实名/信息认证后的用户,以方便实施策略布控: - true:认证客户 - false:非认证客户 |
realUser | Boolean | 否 | - | 用于标记是否经过真人认证后的用户,以方便实施策略布控: - true:认证客户 - false:非认证客户 |
验证
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
verifyType | String | 是 | - | 当前执行的验证手段类型,可选传入参数包括: - upLinkSMS:上行短信验证 - downLinkSMS:下行短信验证 - oneClick:一键无感验证 - captcha:滑动、点选、推理、语序等验证 - voice:语音验证 - face:人脸验证 |
verifyResult | String | 否 | - | 验证是否成功,可选传入参数包括: - success:验证通过 - fail:验证失败 |
社交互动保护
私聊
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
targetId | String | 是 | 128 | 聊天对象ID(用户ID) |
contentType | String | 是 | - | 用户发送的聊天信息类型,可传入参数包括: - text:文本 - image:图片 - video:视频 - audio:音频 - link:链接 |
content | String | 否 | 1024 | 如聊天内容的文本,则传入文本信息(可用于做轻量级文本检测) |
chatId | String | 否 | 64 | 当前聊天对话的会话ID,1v1聊天唯一识别ID(只要聊天双方对象未发生改变,则会话id不变) |
群聊/直播间等多人场景
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
chatGroupId | String | 是 | 128 | 当前群组、直播间等公共空间ID |
contentType | String | 是 | - | 用户发送的聊天信息类型,可传入参数包括: - text:文本 - image:图片 - video:视频 - audio:音频 - link:链接 |
content | String | 否 | 1024 | 如聊天内容的文本,则传入文本信息(可用于做轻量级文本检测) |
送礼
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
targetIdList | List<String> |
是 | 数组最大元素个数: 100 字符串元素最大长度: 128 |
送礼对象用户ID,如送礼对象为多个,则可传入多个对象ID |
giftId | String | 否 | 64 | 礼品ID |
giftPrice | Double | 否 | 8 | 礼品价格,可以是应用内货币,也可以是真实货币,如为后者,则默认货币计量单位:CNY,单位:元 |
打招呼
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
targetIdList | List<String> |
是 | 数组最大元素个数: 100 字符串元素最大长度: 128 |
打招呼对象ID,如打招呼对象为多个,则可传入多个对象ID |
content | String | 否 | 1024 | 打招呼文本内容 |
打赏
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
targetId | String | 是 | 128 | 打赏对象ID,通常为主播ID、内容作者ID |
rewardPrice | Double | 是 | 8 | 打赏金额,通常为真实货币,默认货币计量单位:CNY,单位:元 |
relatedId | String | 否 | 64 | 打赏关联内容ID,通常用于文章、视频打赏场景 |
加入群组/进入直播间
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
chatGroupId | String | 是 | 64 | 用户加入的群组对象的ID |
groupName | String | 否 | 64 | 用户加入的群组的名称 |
groupNum | Long | 否 | 8 | 群组成员数量 |
groupLevel | Long | 否 | 8 | 用于标记群组等级 |
joinType | String | 否 | - | 用户标记本次加群行为是用户主动申请,还是群邀请,可传入参数包括: - userApply:用户主动申请 - invited:用户被邀请 |
创建群组
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
chatGroupId | String | 是 | 64 | 用户创建的群组的ID |
groupName | String | 否 | 64 | 用户创建的群组的名称 |
加好友/匹配
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
targetId | String | 是 | 128 | 加好友对象用户ID |
psText | String | 否 | 1024 | 加好友附言文本 |
运营/营销活动保护
签到
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
signInDays | Long | 否 | 8 | 用户累计签到天数 |
getAward | Boolean | 是 | - | 标记当前行为是否行为激励的方式之一: - true:是行为激励 - false:不是行为激励 |
awardId | String | 否 | 64 | 如当前行为是行为激励形式之一,则传入用户可获取到的激励物品ID |
awardNum | Long | 否 | 8 | 如激励物品可通过数字衡量,可传入激励物品的数量(如积分) |
做任务
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
taskId | String | 是 | 64 | 任务的唯一标识ID |
taskType | String | 否 | 64 | 任务的类型,如:看视频、点赞、签到、下载等 |
getAward | Boolean | 是 | - | 标记任务是否行为激励的方式之一: - true:是行为激励 - false:不是行为激励 |
awardId | String | 否 | 64 | 如当前行为是行为激励形式之一,则传入用户可获取到的激励物品ID |
awardNum | Long | 否 | 8 | 如激励物品可通过数字衡量,可传入激励物品的数量(如积分) |
inviterId | String | 否 | 128 | 如任务为邀请制,则传入邀请人 |
invitationCode | String | 否 | 128 | 如任务为邀请制,传入邀请码(如邀请链接、二维码中的邀请码,凡是用于标记邀请的唯一标识的字段) |
抽奖
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
taskId | String | 是 | 64 | 抽奖行为唯一标识ID |
result | Integer | 是 | - | 标记抽奖结果: - 1:中奖 - 0:没中奖 |
awardId | String | 否 | 64 | 如当前行为是行为激励形式之一,则传入用户可获取到的激励物品ID |
awardNum | Long | 否 | 8 | 如激励物品可通过数字衡量,可传入激励物品的数量(如积分) |
awardLevel | Integer | 否 | - | 用于标记奖品等级,可分为以下三类: - 1:初级奖品(低价值奖品) - 2:中级奖品 - 3:高级奖品(高价值奖品) |
领劵
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
couponType | String | 是 | 64 | 用户所领券的类型,如:满减券、免单券、打折券等 |
couponSource | String | 否 | 64 | 用户所领券的来源渠道,如商户发放、平台发放等 |
couponId | String | 是 | 64 | 用户所领券的唯一标识ID |
couponPrice | Double | 否 | 8 | 如券可通过数字衡量价值,可传入具体的价值(如券的金额) |
抢红包
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
redEnvelopeType | String | 否 | 64 | 红包类型,如口令红包、随机红包等 |
redEnvelopSource | String | 是 | - | 红包来源类型,可选传入参数包括: - user:用户发的红包 - official:官方发的红包 - store:商家发的红包(适用于应用存在第三方入驻商户的情况) - other:未知/其他方发的红包 |
redEnvelopOwnerId | String | 否 | 128 | 如红包来源用户、商户,则传入用户ID、商户ID |
redEnvelopPrice | Double | 是 | 8 | 红包的金额,货币计量单位:CNY,单位:元 |
活动发起邀请
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
invitationCode | String | 是 | 128 | 本次邀请唯一识别ID,如邀请码等 |
getAward | Boolean | 是 | - | 标记当前行为是否行为激励的方式之一: - true:是行为激励 - false:不是行为激励 |
awardId | String | 否 | 64 | 如当前行为是行为激励形式之一,则传入用户可获取到的激励物品ID |
awardNum | Long | 否 | 8 | 如激励物品可通过数字衡量,可传入激励物品的数量(如积分) |
invitationType | String | 否 | 32 | 标记当前邀请活动类型,如邀请注册、邀请助力砍价等 |
requireNum | Long | 否 | 8 | 如邀请活动的奖励是阶梯式的,请传入最低获取奖励所要求的接受邀请人数 |
活动受邀
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
invitationCode | String | 是 | 128 | 本次邀请唯一识别ID,如邀请码等 |
inviterId | String | 是 | 128 | 邀请人的用户ID |
groupId | String | 否 | 64 | 如接受的是诸如拼团等活动,则传入团ID |
点赞
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
contentId | String | 是 | 128 | 点赞对象ID |
ownerId | String | 是 | 128 | 被点赞对象拥有者用户ID |
times | Long | 否 | 8 | 点赞对象累计被点赞次数 |
getAward | Boolean | 是 | - | 标记当前行为是否行为激励的方式之一: - true:是行为激励 - false:不是行为激励 |
awardId | String | 否 | 64 | 如当前行为是行为激励形式之一,则传入用户可获取到的激励物品ID |
awardNum | Long | 否 | 8 | 如激励物品可通过数字衡量,可传入激励物品的数量(如积分) |
评论
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
contentId | String | 是 | 128 | 评论对象ID |
ownerId | String | 是 | 128 | 被评论对象拥有者用户ID |
times | Long | 否 | 8 | 评论对象累计被评论次数 |
comment | String | 否 | 1024 | 评论的文本内容 |
getAward | Boolean | 是 | - | 标记当前行为是否行为激励的方式之一: - true:是行为激励 - false:不是行为激励 |
awardId | String | 否 | 64 | 如当前行为是行为激励形式之一,则传入用户可获取到的激励物品ID |
awardNum | Long | 否 | 8 | 如激励物品可通过数字衡量,可传入激励物品的数量(如积分) |
转发/分享
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
contentId | String | 是 | 128 | 转发/分享对象ID |
ownerId | String | 是 | 128 | 被转发/分享对象拥有者用户ID |
times | Long | 否 | 8 | 转发/分享对象累计被转发/分享次数 |
targetId | String | 否 | 64 | 如转发/分享目标对象是用户、群,可传入用户、群ID |
shareChannel | String | 是 | - | 转发/分享的通道,可选传入参数包括: - self:通过当前app自身渠道转发 - weixin:转发/分享到微信 - qq:转发/分享到qq - weibo:转发/分享到微博 - other:未知/其他分享渠道 |
getAward | Boolean | 是 | - | 标记当前行为是否行为激励的方式之一: - true:是行为激励 - false:不是行为激励 |
awardId | String | 否 | 64 | 如当前行为是行为激励形式之一,则传入用户可获取到的激励物品ID |
awardNum | Long | 否 | 8 | 如激励物品可通过数字衡量,可传入激励物品的数量(如积分) |
收藏
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
contentId | String | 是 | 128 | 收藏对象ID |
ownerId | String | 是 | 128 | 被收藏对象拥有者用户ID |
times | Long | 否 | 8 | 收藏对象累计被收藏次数 |
goodsPrice | Double | 否 | 8 | 被收藏对象如为商品,可上传商品价格。货币计量单位:CNY,单位:元 |
getAward | Boolean | 是 | - | 标记当前行为是否行为激励的方式之一: - true:是行为激励 - false:不是行为激励 |
awardId | String | 否 | 64 | 如当前行为是行为激励形式之一,则传入用户可获取到的激励物品ID |
awardNum | Long | 否 | 8 | 如激励物品可通过数字衡量,可传入激励物品的数量(如积分) |
关注
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
followId | String | 是 | 128 | 关注对象ID(可以是被关注的用户ID、商户ID等) |
getAward | Boolean | 是 | - | 标记当前行为是否行为激励的方式之一: - true:是行为激励 - false:不是行为激励 |
awardId | String | 否 | 64 | 如当前行为是行为激励形式之一,则传入用户可获取到的激励物品ID |
awardNum | Long | 否 | 8 | 如激励物品可通过数字衡量,可传入激励物品的数量(如积分) |
支付安全保护
充值
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
payTime | Long | 是 | 13 | 角色充值到账时间,UNIX 时间戳(毫秒值) |
appChannel | String | 是 | 32 | 客户端app的渠道,如:appstore、googleplay |
money | Double | 是 | 8 | 商店定价货币额度,50元(换算人民币)以下记录准确金额,50元(换算人民币)以上可都记录为50元 |
currency | String | 是 | 16 | 商店定价货币类型,如:USD、EUR、CNY,参考货币代码表(ISO4217) |
payMoney | Double | 是 | 8 | 支付货币额度,50元(换算人民币)以下记录准确金额,50元(换算人民币)以上可都记录为50元 |
payCurrency | String | 是 | 16 | 玩家实际支付货币类型,如:USD、EUR、CNY,参考货币代码表(ISO4217) |
payChannel | String | 是 | 32 | 支付渠道,如app_store、google、H5等) |
orderId | String | 是 | 128 | app_store/google/其他渠道唯一订单号 app_store:iOS的transactionId,例如:160001456292965 google:Google订单号,例如:GPA.3329-6166-4658-28227 |
orderCreateTime | Long | 是 | 13 | 订单创建时间,UNIX 时间戳(毫秒值) |
orderPayTime | Long | 是 | 13 | 订单支付时间,UNIX 时间戳(毫秒值) |
orderFinishTime | Long | 是 | 13 | 订单发货时间,UNIX 时间戳(毫秒值) |
callbackUrl | String | 否 | 256 | 回调接口地址,用于坏账治理结果回调通知业务方,如果您开通了坏账治理功能,请在此处填入回调接口,否则检测结果仅可通过页面查询获取。 仅检测到异常时会回调通知,正常订单不会调用回调接口。 |
消费
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
createTime | Long | 是 | 13 | 用户账号/角色创建时间点,UNIX 时间戳(毫秒值) |
cost | Long | 是 | 8 | 消费货币数(可以是真实金额、应用/游戏中的货币数) |
积分/券等兑换
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
goodsId | String | 是 | 64 | 用户兑换的商品ID |
listingTime | Long | 否 | 13 | 商品上架的时间点 |
goodsCount | Long | 否 | 8 | 兑换商品数量 |
unitPrice | Double | 否 | 8 | 商品的实际单价,通常为真实货币,默认货币计量单位:CNY,单位:元 |
totalPrice | Double | 否 | 8 | 兑换商品总价格,通常为真实货币,默认货币计量单位:CNY,单位:元 |
consumption | Long | 是 | 16 | 兑换商品消耗的积分、券数量 |
costIdList | List<String> |
否 | 数组最大元素个数: 100 字符串元素最大长度: 128 |
如兑换商品消耗的是诸如优惠券、折扣券等,可传入券的ID,如消耗多个,可传入多个ID |
提现
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
withdrawCount | Double | 是 | 8 | 用户提现的金额,默认货币计量单位:CNY,单位:元 |
withdrawAccount | String | 是 | 64 | 用户提现账号的ID,如支付宝账号ID、微信账号ID等 |
withdrawType | String | 是 | - | 用户提现渠道/方式,可传入参数包括: - bank:提现到银行卡 - weixin:提现到微信 - alipay:提现到支付宝 - other:未知/其他提现渠道 |
退款
参数名 | 类型 | 必填 | 最大长度 | 描述 |
---|---|---|---|---|
refundTime | Long | 是 | 13 | 订单退款时间,UNIX 时间戳(毫秒值) |
orderId | String | 是 | 128 | app_store/google/其他渠道唯一订单号 app_store:iOS的transactionId,例如:160001456292965 google:Google订单号,例如:GPA.3329-6166-4658-28227 |
refundReason | String | 否 | 64 | 用户退款原因 |
callbackUrl | String | 否 | 256 | 回调接口地址,用于坏账治理结果回调通知业务方,如果您开通了坏账治理功能,请在此处填入回调接口,否则检测结果仅可通过页面查询获取。 仅检测到异常时会回调通知,正常订单不会调用回调接口。 |
其他
其他场景情况下,sceneData无强制要求,可传空串,例如sceneData:"{ }"