Skip to content

反作弊SDK(阿里云风格 OpenAPI)

通过 umeng-cli call 命令调用,使用阿里云 ACS3-HMAC-SHA256 V3 签名鉴权。

通用调用方式

bash
umeng-cli call '{"name":"<接口名>","api":{"method":"GET/POST","baseUrl":"https://antirisk.openapi.umeng.com","endpoint":"/<接口路径>","authType":"aliyun-aksk","version":"2022-11-28"}}' '<参数JSON>'

AK/SK 会在首次调用时自动通过登录凭证获取并加密缓存,无需手动配置。


接口列表

反作弊:


反作弊

GetZidTagByAtoken — GetZidTagByAtoken

通过友盟atoken换取zid+风险标签信息!。

参数类型必填说明
atokenStringatoken(示例: AcNh1pZFEJ9wEO1RkqK2S9Qt0DHxZR6riGmx4CpGrxCpf3_LxvQNQQGaLjGWRg_-Un1yC47qfEiwRysoCJgQrBSa7b274rzhuIW4QDer7J41X18PiHI=)
dataSourceIdString应用的appKey(示例: 59892ebcaed179694b000104)
bash
umeng-cli call '{"name": "GetZidTagByAtoken", "api": {"method": "GET", "baseUrl": "https://antirisk.openapi.umeng.com", "endpoint": "/anti/getZidTagByAtoken", "authType": "aliyun-aksk", "version": "2022-11-28"}}' '{"atoken": "AcNh1pZFEJ9wEO1RkqK2S9Qt0DHxZR6riGmx4CpGrxCpf3_LxvQNQQGaLjGWRg_-Un1yC47qfEiwRysoCJgQrBSa7b274rzhuIW4QDer7J41X18PiHI=", "dataSourceId": "59892ebcaed179694b000104"}'

返回字段:

字段类型说明
MsgString错误消息(示例: 请求次数超限)
dataObject数据结果
codeLongcode(示例: 200)
successBooleansuccess(示例: true)
requestIdStringtraceId用于调试(示例: 2343535353DF8984565)

data 子字段:

字段类型说明
simulatorString模拟器(示例: 1)
debugString调试(示例: 1)
wifiProxyStringwifi代理(示例: 1)
javaHookStringjavaHook(示例: 1)
vpnProxyStringvpn代理(示例: 0)
doubleOpenString双开(示例: 0)
zidStringzid 可信id(示例: F6DD4AD2-B7B8-AA3A-34B8-EDE55FC82FC6)
rootString是否root(示例: 1)
nativeHookString本地hook(示例: 1)
aHookStringaHook(示例: 1)

错误码:

错误码说明
411antiAppPaseErr
412antiCacheErr
402antiSysErr
404appNotExist
405antiAppParamInvalid
416antiQuotaErr
406antiReqCountOverLimit
417antiAppNotMatch

GetZidTagScoreByAtoken —

通过友盟atoken换取zid+风险标签信息+风险分+风险等级。

参数类型必填说明
atokenStringatoken(示例: AcNh1pZFEJ9wEO1RkqK2S9Qt0DHxZR6riGmx4CpGrxCpf3_LxvQNQQGaLjGWRg_-Un1yC47qfEiwRysoCJgQrBSa7b274rzhuIW4QDer7J41X18PiHI=)
dataSourceIdString应用的appKey(示例: 59892ebcaed179694b000104)
bash
umeng-cli call '{"name": "GetZidTagScoreByAtoken", "api": {"method": "GET", "baseUrl": "https://antirisk.openapi.umeng.com", "endpoint": "/anti/getZidTagScoreByAtoken", "authType": "aliyun-aksk", "version": "2022-11-28"}}' '{"atoken": "AcNh1pZFEJ9wEO1RkqK2S9Qt0DHxZR6riGmx4CpGrxCpf3_LxvQNQQGaLjGWRg_-Un1yC47qfEiwRysoCJgQrBSa7b274rzhuIW4QDer7J41X18PiHI=", "dataSourceId": "59892ebcaed179694b000104"}'

返回字段:

字段类型说明
MsgString错误消息(示例: 请求次数超限)
requestIdStringrequestId(示例: 2343535353DF8984565)
dataObject数据结果
CodeLongcode(示例: OK)
successBooleansuccess(示例: true)

data 子字段:

字段类型说明
simulatorString模拟器(示例: 1)
debugString调试(示例: 1)
wifiProxyStringwifi代理(示例: 0)
javaHookStringjavaHook(示例: 0)
vpnProxyStringvpn代理(示例: 0)
doubleOpenString双开(示例: 1)
zidStringzid 可信id(示例: F6DD4AD2-B7B8-AA3A-34B8-EDE55FC82FC6)
rootString是否root(示例: 0)
nativeHookString本地hook(示例: 0)
aHookStringaHook(示例: 0)
riskScoreString风险分,最高100分(示例: 60)
riskLevelString风险等级(>=60为RISK,30>=为VERIFY,否则为PASS)(示例: RISK)

错误码:

错误码说明
411antiAppPaseErr
412antiCacheErr
402antiSysErr
404appNotExist
405antiAppParamInvalid
416antiQuotaErr
406antiReqCountOverLimit
417antiAppNotMatch

ListChannelRiskDetails — ListChannelRiskDetails

获取渠道新增风险设备明细信息。

参数类型必填说明
dataSourceIdString应用appkey(示例: 59892ebcaed179694b000104)
isAllChannelString是否所有渠道,1是,0否(示例: 1)
channelString渠道标识(示例: 360market)
startString开始日期(示例: 20230418)
endString结束时间(示例: 20230418)
bash
umeng-cli call '{"name": "ListChannelRiskDetails", "api": {"method": "GET", "baseUrl": "https://antirisk.openapi.umeng.com", "endpoint": "/anti/listChannelRiskDetails", "authType": "aliyun-aksk", "version": "2022-11-28"}}' '{"dataSourceId": "59892ebcaed179694b000104", "start": "20230418", "end": "20230418"}'

返回字段:

字段类型说明
MsgString错误消息(示例: 请求次数超限)
requestIdString请求traceId(示例: 2343535353DF8984565)
dataObject数据结果
codeLong错误编码(示例: 200)
successBoolean状态(示例: true)

data 子字段:

字段类型说明
riskSumaryArray风险概览
riskDetailsArray风险明细

riskSumary 子字段:

字段类型说明
riskZidEmuDistinctNewString新增风险设备数(示例: 2)
dateString发生日期(示例: 20230418)

riskDetails 子字段:

字段类型说明
zidString可信id(示例: 815E045B-4A9E-AA76-BEFF-048C9B9F651A)
cString渠道(示例: 360market)
avString应用版本号(示例: v1.1.0)
rsString风险分(示例: 60)
rlString风险等级(示例: RISK)
fdString是否设备异常,有任意模拟器/root/双开/hook行为即为设备异常(示例: 1)
pyString是否代理异常,有任意vpn代理或者wifi代理即为代理异常(示例: 1)
anString是否异常活跃(示例: 0)
bnString是否是设备牧场(示例: 1)
jbString是否卡机(示例: 0)
idfaString苹果唯一标识符idfa(示例: 0000-0000-0000000)
oaidString安卓唯一标识符(示例: 343rUFD834343KJDDFS)
dateString日期(示例: 20230410)

错误码:

错误码说明
411antiAppPaseErr
412antiCacheErr
402antiSysErr
413antiNoRuleErr
404appNotExist
405antiAppParamInvalid
416antiQuotaErr
406antiReqCountOverLimit
417antiAppNotMatch

GetRealTimeRiskInfo — GetRealTimeRiskInfo

实时获取反作弊风险信息。

参数类型必填说明
atokenStringatoken信息(示例: Ab63aqUKx9TmYRhPV7LnRLybLRQOEG6GQsr-oGlT8bo6-_z_oYxTqqutBz6R0dBognMN1DBvZImDadsKb8k_Hfcj8A8nrXtxch_nKVg5xARkRmMU2SU=)
dataSourceIdString应用appkey(示例: 62c792d188ccdf4b7ec1aa38)
extraString附属信息(示例: 360risk)
bash
umeng-cli call '{"name": "GetRealTimeRiskInfo", "api": {"method": "GET", "baseUrl": "https://antirisk.openapi.umeng.com", "endpoint": "/anti/getRealTimeRiskInfo", "authType": "aliyun-aksk", "version": "2022-11-28"}}' '{"atoken": "Ab63aqUKx9TmYRhPV7LnRLybLRQOEG6GQsr-oGlT8bo6-_z_oYxTqqutBz6R0dBognMN1DBvZImDadsKb8k_Hfcj8A8nrXtxch_nKVg5xARkRmMU2SU=", "dataSourceId": "62c792d188ccdf4b7ec1aa38"}'

返回字段:

字段类型说明
MsgString错误信息(示例: 请求次数超限)
requestIdStringrequestId(示例: 2343535353DF8984565)
dataObject数据结果
codeLong错误码(示例: 200)
successBoolean成功状态(示例: true)

data 子字段:

字段类型说明
zidString可信id(示例: 815E045B-4A9E-AA76-BEFF-048C9B9F651A)
idfaString苹果唯一标识idfa(示例: 00000000-0000-0000-0000-000000000000)
oaidString安卓唯一标识oaid(示例: sf58rw7erdfdgdgseeg2434)
appChannelString渠道标识,当前活跃来自的渠道标识,反作弊插件上报(示例: 360market)
fakeDeviceString设备异常,即有模拟器、越狱、双开、hook行为任意行为(示例: 1)
proxyDeviceString代理异常,有任意vpn代理或者wifi代理行为(示例: 0)
riskScoreString风险分,最高分68分(示例: 60)
riskLevelString风险等级,score≥60时为RISK,30≤score<60时为VERIFY,30<score时为PASS(示例: RISK)

错误码:

错误码说明
411antiAppPaseErr
412antiCacheErr
402antiSysErr
413antiNoRuleErr
404appNotExist
405antiAppParamInvalid
416antiQuotaErr
406antiReqCountOverLimit
417antiAppNotMatch

Released under the MIT License.