API: Factor/idcard - 身份证二要素
概览
factor/idcard
是 SUBMAIL 的简版身份验证 API,可以根据身份证号和姓名判断两者是否一致。
URL
<主> http://tpa.mysubmail.com/factor/idcard
<备> https://tpa.mysubmail.com/factor/idcard
http 请求方式
请求方式 | content-type 设置 |
---|---|
http post | multipart/form-data 、x-www-form-urlencoded 、application/json |
signature创建规则
1.请将以下参数按照字段升序(A-Z)排列
appkey、idNo 、name、timestamp
2.创建签名字符串 :以"key=value" + "&"(连接符)+ "key=value" 的方式连接所有参数
3.创建签名:拼接签名字符串示例string = "appkey=xxxx&idNo =xxxxx&name=张三& timestamp=1614759954",然后使用sha256(string)创建签名
注:中文需要使用urlencode处理后再参与创建签名
请求参数
参数 | 类型 | 是否必需 | 默认 | 描述 |
---|---|---|---|---|
appid | string | 必需 | 无 | 三要素应用 appid,自控制台获取 |
timestamp | string | 必需 | 无 | 时间戳 |
name | string | 必需 | 无 | 待验证的身份证姓名 |
idNo | string | 必需 | 无 | 待验证的身份证号码 |
signature | string | 必需 | 无 | sha256 数据加密校验证书 |
返回参数格式
jsonString
代码示例
详情请查询demo示例文档
响应消息
API请求失败
{
// 状态描述
'status' : 'error' ,
// API流水号
'send_id' : "********************************",
// API返回的状态码 详情查看 API错误代码与描述 文档
'code' : 1201 ,
// API返回的描述
'msg' : 'Incorrect APP ID.' ,
}
{
"status": "error",
"send_id": "********************************",
"code": 1217,
"msg": "API Gateway Error:请检查身份证号码的有效性(*****)"
}
API请求成功
{
"status": "success",
"send_id": "********************************",
"result": {
//身份证号码
"bank_idCard": "******************",
//姓名
"bank_name": "***",
//结果描述
"bank_msg": "验证通过",
//是否验证一致 01一致 02不一致
"status": "01",
//是否验证一致 true一致 false不一致
"identical": true
}
}
identical和status 参数意义相同
//认证失败,返回示例
{
"status": "success",
"send_id": "********************************",
"result": {
"bank_idCard": "******************",
"bank_name": "****",
"bank_msg": "验证不通过",
"status": "02",
"identical": false
}
}