个人实名认证接口:包括身份信息认证-二要素核验、身份信息认证-人像核验、手机号信息认证-运营商二、三要素核验(简版)、银行卡认证-三、四要素核验(简版)
POST
https://cloudauth.jdcloud-api.com/v1/personal
名称 | 类型 | 是否必需 | 默认值 | 描述 |
---|---|---|---|---|
personalSpec | PersonalSpec | True |
名称 | 类型 | 是否必需 | 默认值 | 描述 |
---|---|---|---|---|
checkType | Integer | True | 认证方式(0 银行卡四要素,1 银行卡三要素,2 姓名身份证二要素,3 人像三要素,4 手机号三要素, 25 手机号二要素) 0 提交姓名、身份证号、银行卡号、手机号,与其在银行开户时预留的信息进行比对,核验真实性 1 提交姓名、身份证号、银行卡号,与其在银行开户时预留的信息进行比对,核验真实性 2 提交姓名、身份证号,与其公安身份证信息进行比对,核验真实性 3 提交姓名、身份证号、人像图片,与其公安身份证信息进行比对,核验真实性 4 提交姓名、身份证号、手机号,与其在运营商开户时预留的信息进行比对,核验真实性 |
|
personalUser | PersonalUser | True | 个人认证要素信息 |
名称 | 类型 | 是否必需 | 默认值 | 描述 |
---|---|---|---|---|
name | String | True | 姓名 | |
idCard | String | True | 身份证号码 | |
bankcard | String | False | 银行卡号(银行卡三要素、四要素时必传) | |
mobile | String | False | 手机号(手机号三要素、银行卡四要素时必传) | |
imgBase64 | String | False | 人像图片(人像三要素时必传) |
名称 | 类型 | 描述 |
---|---|---|
result | Result | |
requestId | String | 请求ID |
名称 | 类型 | 描述 |
---|---|---|
authInfo | AuthInfo |
名称 | 类型 | 描述 |
---|---|---|
success | Boolean | 认证结果true 成功, false 失败(建议使用该字段作为认证结果判断) |
hasException | Boolean | 是否有异常 true 有异常, false 无异常 |
code | String | 认证结果状态码 |
message | String | 1. 认证结果信息 2. 查询结果信息 3. 状态码信息 |
detail | String | 1. 认证结果信息 2. 查询结果信息(建议该字段作为日志保存打印即可)3. 计费标识(chargeFlag为1计费,chargeFlag为0不计费) |
{
"requestId":"cn15p6o8w2p897ouctr7uqnrccpwsth4",
"result":{
"success":true,
"hasException":false,
"code":"ok",
"message":"ok",
"detail":"{\"chargeFlag\":\"1\",\"message\":\"认证通过\",\"orderNumber\":\"cn15p6o8w2p897ouctr7uqnrccpwsth4\"}"
}
}
名称 | 类型 | 描述 |
---|---|---|
error | ServiceError | |
requestId | String | 请求ID |
名称 | 类型 | 描述 |
---|---|---|
code | Integer | 错误码 |
message | String | 错误描述 |
status | String | 状态码 |
{
"requestId":"cn17cooihc3mrhk8dkv6uh4s204srnp2",
"error":{
"code":3024,
"message":"Authentication Failed: 识别失败",
"status":""
}
}
返回码 | 描述 |
---|---|
200 | OK |
403 | FAIL |
public void test(){
//1. 设置accessKey和secretKey
String accessKeyId = "XXXXXXXXXXXXXXXXXX";
String secretAccessKey = "XXXXXXXXXXXXXXXXXX";
String gwApi = "cloudauth.cn-north-1.jdcloud-api.com";
CredentialsProvider credentialsProvider = new StaticCredentialsProvider(accessKeyId, secretAccessKey);
//2. 创建vmClient(注意:只在初始化时创建client 响应时间会更快,不需要每次请求都创建)
CloudauthClient client = CloudauthClient.builder()
.credentialsProvider(credentialsProvider)
.environment(new Environment.Builder().endpoint(gwApi).build())
.httpRequestConfig(new HttpRequestConfig.Builder()
.socketTimeout(20000)
.maxConnPerRoute(200)
.maxTotal(1000)
.validateAfterInactivity(2)
.connectionTimeout(20000)
.build())
.build();
client.getHttpConnectionParams().setParameter("http.socket.keepalive",true);
// 3.创建请求
/**
* set 认证方式(0 银行卡四要素,1 银行卡三要素,2 姓名身份证二要素,3 人像三要素,4 手机号三要素)
* 0 提交姓名、身份证号、银行卡号、手机号,与在银行开户时预留的信息比对
* 1 提交姓名、身份证号、银行卡号,与在银行开户时预留的信息比对
* 2 提交姓名、身份证号,与公安身份证信息比对
* 3 提交姓名、身份证号、人像图片,与在运营商开户留的信息比对
* 4 提交姓名、身份证号、手机号,与在运营商开户留的信息比对
*/
// 个人信息
PersonalUser user = new PersonalUser();
user.setName(""); // 姓名
user.setIdCard(""); // 身份证号码
user.setBankcard(""); // 银行卡号(需要时再传)
user.setMobile(""); //手机号(需要时再传)
try{
byte[] bytes = FileUtils.readFileToByteArray(new File("D:\\image.png"));
user.setImgBase64(DatatypeConverter.printBase64Binary(bytes)); //人像图片大小5-150k(需要时再传)
} catch (Exception e){
System.out.println("base64 error");
}
PersonalSpec spec = new PersonalSpec();
spec.setCheckType(2); // 认证类型
spec.setPersonalUser(user);
PersonalAuthRequest request = new PersonalAuthRequest();
request.setPersonalSpec(spec);
// 4.发送请求,返回结果
PersonalAuthResponse response = client.personalAuth(request);
//5. 处理响应
System.out.println(new Gson().toJson(response));
}
import (
"fmt"
"time"
core "git.jd.com/jcloud-api-gateway/jcloud-sdk-go/core"
cloudauth "git.jd.com/jcloud-api-gateway/jcloud-sdk-go/services/cloudauth/apis"
client "git.jd.com/jcloud-api-gateway/jcloud-sdk-go/services/cloudauth/client"
//models "git.jd.com/jcloud-api-gateway/jcloud-sdk-go/services/cloudauth/models"
)
func IntHelper(x int) *int {
return &x
}
func StrHelper(x string) *string {
return &x
}
func BoolHelper(x bool) *bool {
return &x
}
func main() {
accessKey := "XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
secretKey := "XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
credentials := core.NewCredentials(accessKey, secretKey)
config := core.NewConfig()
config.SetEndpoint("10.0.0.1:8000")
config.SetScheme("http")
config.SetTimeout(20 * time.Second)
client := client.NewCloudauthClient(credentials)
client.SetConfig(config)
// PersonalAuth 个人实名认证
{
user := PersonalUser{
Name: "京东云",
IdCard: "10234518981234",
Bankcard: "6289873647576518651",
Mobile: "13333333333",
}
personalSpec := models.PersonalSpec{
CheckType: 0,
PersonalUser: user,
}
req := cloudauth.NewPersonalAuthRequest(personalSpec)
if resp, err := client.PersonalAuth(req); err != nil {
fmt.Println("error : ", err)
} else {
fmt.Println("resp : ", resp)
}
}
}
我们的产品专家为您找到最合适的产品/解决⽅案
1v1线上咨询获取售前专业咨询
专业产品顾问,随时随地沟通