个验 1.4.3.0 接入文档

个验 1.4.3.0 接入文档

接口说明

云验证

1 【云验证】鉴权接口

1.1 接口说明

业务方调用此接口获得authToken,以用于云验证结果查询接口。token在一段时间内有效,接口IP需要配置IP白名单。

请求地址:https://openapi-gy.getui.com/v1/gy/auth_sign

协议:HTTPS

请求方法:POST+json

1.2 参数说明

请求参数
参数 类型 约束 说明
appId String 必选 业务在个验申请的应用id
timestamp Long 必选 时间戳
sign String 必选 接口签名,生成规则:SHA256(appKey + timestamp + masterSecret)
响应参数
参数 层级 类型 约束 说明
errno 1 Int 必选 固定值 0
data 1 Object 必选
msg 2 String 必选 接口返回码说明
result 2 String 必选 接口返回码
data 2 Object 可选
authToken 3 String 可选 调用云验证结果查询接口凭证

1.3 示例

请求示例
{
    "appId": "LLNstWgyGm8UM2SsherlU5",
    "timestamp": 1529391652123,
    "sign": "8f8ef776b7364c96fc1a7e734976e32b6a5e297a1ddbaea31bf3deab517d1"
}
返回示例
{
    "errno": "0",
    "data": {
        "result": "20000",
        "msg": "成功",
        "data": {
            "authToken": "8f8ef776b7364c96fc1a7e734976e32b6a5e297a1ddbaea3",
        }
    }
}

1.4 返回码说明

接口返回码说明
返回码 返回码描述
20000 接口调用成功
40004 应用无效,应用不存在
40005 appid为空
40009 未知错误
40026 签名错误
40027 获得auth_token失败
40031 IP受限
40032 参数错误
40033 请求过快,请稍后再试
40034 今日次数超限
50000 未知错误
50001 其他错误
50002 未知错误

2 【云验证】二次校验接口

2.1 接口说明

业务方携带云验证结果查询鉴权接口得到的authToken来调用此接口查询云验证结果。authToken在一段时间内有效,接口IP需要配置IP白名单。

请求地址:https://openapi-gy.getui.com/v1/gy/verify_query

协议:HTTPS

请求方法:POST+json

2.2 参数说明

请求参数
参数 类型 约束 说明
appId String 必选 业务在个验申请的应用id
gyuid String 必选 个验用户唯一标识
reqId String 必选 云验证通过返回的请求ID
authToken String 必选 鉴权唯一凭证
响应参数
参数 层级 类型 约束 说明
errno 1 Int 必选 固定值 0
data 1 Object 必选
msg 2 String 必选 接口返回码说明
result 2 String 必选 接口返回码
data 2 Object 可选
reqId 3 String 可选 云验证通过返回的请求ID
time 3 String 可选 通过云验证时的时间戳
type 3 String 可选 云验证类型 0:云短信验证 1:云验证 2:短信验证
verify_result 3 String 可选 云验证结果码
sms_verify_result 3 String 可选 短信验证结果码 (说明)

2.3 示例

请求示例
{
    "appId": "LLNstWgyGm8UM2SsherlU5",
    "gyuid": "83f0f7e943484e3ca58fccc2f3d1e48777",
    "reqId": "GY-201809-7364c96fc1a7e7349",
    "authToken": "9f8ef776b7364c96fc1a7e734976e32b6a5e297a1ddbaea31bf3deab515ab7d1"
}
返回示例
{
    "errno": "0",
    "data": {
        "result": "20000",
        "msg": "成功",
        "data": {
            "reqId": "GY-201809-7364c96fc1a7e7349",
            "time": "1529391652123",
            "type": "0",
            "verify_result": "20002",
            "sms_verify_result": "20003"
        }
    }
}

2.4 返回码说明

接口返回码说明,对应result字段
返回码 返回码描述
20000 接口调用成功
40004 应用无效,应用不存在
40005 appid为空
40009 未知错误
40028 auth_token过期
40029 reqId错误或过期
40030 reqId信息与请求参数不匹配
40031 IP受限
40032 参数错误
40033 请求过快,请稍后再试
40034 今日次数超限
50000 未知错误
50001 其他错误
结果返回码说明,对应verify_resultsms_verify_result字段

说明:只要包含任何一个成功码,代表二次校验成功

返回码 返回码描述
20001 云验证成功
20002 云验证失败,短信验证码发送成功
20003 验证码校验成功
21001 云验证成功
22001 短信验证码发送成功
22002 验证码校验成功
90001 云验证失败
90002 短信验证码校验失败
90003 短信发送失败
90004 验证失败
90005 验证失败
90006 云验证失败,发送短信失败
90007 验证失败

动画验证码

3 【动画验证码】二次验证接口

3.1 接口说明

业务方携带动画验证码校验成功后的validate来调用此接口进行二次验证。validate在一段时间内有效,接口IP需要配置IP白名单。

请求地址:https://openapi-gy.getui.com/v1/gy/captcha/verify

协议:HTTPS

请求方法:POST+json

3.2 参数说明

请求参数
参数 类型 约束 说明
appId String 必选 业务在个验申请的应用id
gyuid String 必选 个验用户唯一标识
businessId String 必选 动画验证码业务id
validate String 必选 动画验证码验证结果查询凭证
timestamp Long 必选 时间戳
sign String 必选 接口签名,生成规则:
1. 筛选:获取所有非空参数值的请求参数,不包括字节类型参数,如文件、字节流,剔除sign参数。
2. 排序:将筛选的参数按照第一个字符的键值ASCII码递增排序(字母升序排序),如果遇到相同字符则按照第二个字符的键值ASCII码递增排序,以此类推。
3. 拼接:将排序后的参数与其对应值,使用URL键值对的格式(即key1=value1&key2=value2…)拼接,此时生成的字符串为待签名字符串。将待签名字符串拼上“&key=${masterSecret}”,带入SHA256算法中得出sign。
响应参数
参数 层级 类型 约束 说明
errno 1 Int 必选 固定值 0
data 1 Object 必选
msg 2 String 必选 接口返回码说明
result 2 String 必选 接口返回码
data 2 Object 可选
verifyResult 3 Boolean 可选 二次验证结果, true:成功 false:失败

3.3 示例

请求示例
{
    "appId": "LLNstWgyGm8UM2SsherlU5",
    "gyuid": "83f0f7e943484e3ca58fccc2f3d1e48777",
    "businessId": "20180523",
    "validate": "6a2cab5c0abc06ea9a1503ff4eb619d1",
    "timestamp": 1529391652123,
    "sign": "9f8ef776b7364c96fc1a7e734976e32b6a5e297a1ddbaea31bf3deab515ab7d1"
}
返回示例
{
    "errno": "0",
    "data": {
        "result": "20000",
        "msg": "成功",
        "data": {
            "verifyResult": true,
        }
    }
}

3.4 返回码说明

接口返回码说明
返回码 返回码描述
20000 接口调用成功
40004 应用无效,应用不存在
40005 appid为空
40009 未知错误
40031 IP受限
40032 参数错误
50000 未知错误
50001 其他错误
60001 业务ID无效
60002 请求过快
60004 无权限
60008 sign验证失败

反欺诈

4 【反欺诈】注册保护、登录保护二次校验

4.1 接口说明

业务方携带反欺诈接口返回的token来调用此接口获取反欺诈结果,进行二次校验。token在一段时间内有效,接口需要配置IP白名单。

请求地址:https://openapi-gy.getui.com/v1/af/antifraud_query

协议:HTTPS

请求方法:POST+json

4.2 参数说明

请求参数
参数 类型 约束 说明
appId String 必选 业务在个验申请的应用id
gyuid String 必选 个验用户唯一标识
token String 必选 查询反欺诈结果凭证
timestamp Long 必选 时间戳
sign String 必选 接口签名,生成规则:SHA256(appId + gyuid + token + timestamp + masterSecret)
响应参数
参数 层级 类型 约束 说明
errno 1 Int 必选 固定值 0
data 1 Object 必选
msg 2 String 必选 接口返回码说明
result 2 String 必选 接口返回码
data 2 Object 可选
riskLevel 3 String 可选 分为0-4共5个等级,0代表可信用户,1-2代表怀疑用户,3-4代表风险用户
riskType 3 Array 可选 1:账号风险 2:行为风险 3:环境风险

4.3 示例

请求示例
{
    "appId": "LLNstWgyGm8UM2SsherlU5",
    "gyuid": "83f0f7e943484e3ca58fccc2f3d1e48777",
    "token": "6a2cab5c0abc06ea9a1503ff4eb619d1",
    "timestamp": 1529391652123,
    "sign": "9f8ef776b7364c96fc1a7e734976e32b6a5e297a1ddbaea31bf3deab515ab7d1"
}
返回示例
{
    "errno": "0",
    "data": {
        "result": "20000",
        "msg": "成功",
        "data": {
            "riskLevel": "1",
            "riskType": ["1"],
        }
    }
}

4.4 返回码说明

接口返回码说明
返回码 返回码描述
20000 成功
40004 应用无效,应用不存在
40005 appid为空
40009 未知错误
40031 IP受限
40032 参数错误
40033 请求过快,请稍后再试
40036 无权限
40041 token失效
40044 sign验证失败
50000 未知错误
50001 其他错误

5 【反欺诈】反欺诈通用查询接口

5.1 接口说明

业务方服务端在获取gyuid后,可通过gyuid定期按需获取设备风险信息。接口需配置IP白名单。

请求地址:https://openapi-gy.getui.com/v1/af/antifraud

协议:HTTPS

请求方法:POST+json

5.2 参数说明

请求参数
参数 类型 约束 说明
appId String 必选 业务在个验申请的应用id
gyuid String 必选 个验用户唯一标识
userIp String 可选 用户ip
pn String 可选 手机号码MD5
scene Integer 必选 场景,0:通用,1:注册,2:登录
timestamp Long 必选 时间戳
sign String 必选 1. 筛选:获取所有非空参数值的请求参数,不包括字节类型参数,如文件、字节流,剔除sign参数。
2. 排序:将筛选的参数按照第一个字符的键值ASCII码递增排序(字母升序排序),如果遇到相同字符则按照第二个字符的键值ASCII码递增排序,以此类推。
3. 拼接:将排序后的参数与其对应值,使用URL键值对的格式(即key1=value1&key2=value2…)拼接,此时生成的字符串为待签名字符串。将待签名字符串拼上“&key=${masterSecret}”,带入SHA256算法中得出sign。
响应参数
参数 层级 类型 约束 说明
errno 1 Int 必选 固定值 0
data 1 Object 必选
msg 2 String 必选 接口返回码说明
result 2 String 必选 接口返回码
data 2 Object 可选
riskLevel 3 String 可选 分为0-4共5个等级,0代表可信用户,1-2代表怀疑用户,3-4代表风险用户
riskType 3 Array 可选 1:账号风险 2:行为风险 3:环境风险

5.3 示例

请求示例
{
    "appId": "LLNstWgyGm8UM2SsherlU5",
    "gyuid": "83f0f7e943484e3ca58fccc2f3d1e48777",
    "scene": 1,
    "timestamp": 1529391652123,
    "sign": "9f8ef776b7364c96fc1a7e734976e32b6a5e297a1ddbaea31bf3deab515ab7d1"
}
返回示例
{
    "errno": "0",
    "data": {
        "result": "20000",
        "msg": "成功",
        "data": {
            "riskLevel": "1",
            "riskType": ["1"],
        }
    }
}

5.4 返回码说明

接口返回码说明
返回码 返回码描述
20000 成功
40004 应用无效,应用不存在
40005 appid为空
40009 未知错误
40031 IP受限
40032 参数错误
40033 请求过快,请稍后再试
40034 今日验证次数超限
40036 无权限
40044 sign验证失败
50000 未知错误
50001 其他错误

一键登录

6 【一键登录】获取手机号接口

6.1 接口说明

业务方调用此接口获取手机号,参数token是来自于SDK端调用一键登录之后返回的用户授权凭证信息。token在一段时间内有效,接口IP需要配置IP白名单。

请求地址:https://openapi-gy.getui.com/v1/gy/ct_login/gy_get_pn

协议:HTTPS

请求方法:POST+json

6.2 参数说明

请求参数
参数 类型 约束 说明
appId String 必选 业务在个验申请的应用id
timestamp Long 必选 时间戳
sign String 必选 接口签名,生成规则:SHA256(appKey + timestamp + masterSecret)
token String 必选 调用SDK上传token返回的凭证
gyuid String 必选 调用
响应参数
参数 层级 类型 约束 说明
errno 1 Int 必选 固定值 0
data 1 Object 必选
msg 2 String 必选 接口返回码说明
result 2 String 必选 接口返回码
data 2 Object 可选
pn 3 String 可选 手机号

6.3 示例

请求示例
{
    "appId": "LLNstWgyGm8UM2SsherlU5",
    "timestamp": 1529391652123,
    "gyuid":"12313ssad",
    "sign": "8f8ef776b7364c96fc1a7e734976e32b6a5e297a1ddbaea31bf3deab517d1"
}
返回示例
{
    "errno": "0",
    "data": {
        "result": "20000",
        "msg": "成功",
        "data": {
            "pn": "18811199999",
        }
    }
}

6.4 返回码说明

接口返回码说明
返回码 返回码描述
20000 接口调用成功
40004 应用无效,应用不存在
40005 appid为空
40009 未知错误
40026 签名错误
40027 获得auth_token失败
40031 IP受限
40032 参数错误
40033 请求过快,请稍后再试
40034 今日次数超限
50000 未知错误
50001 其他错误
50002 未知错误

文档中心搜索