一、3201-小文件批量上传
1. 接口功能
批量上传小文件,单个文件大小不超过2M,文件数量不超过5个。图片支持 jpg 、png格式(不支持手动修改图片后缀) 。文件存储ID(FileID)对应需调用3201的其他接口中的上传照片ID(UploadFileID)。
2. 报文结构
请求报文:
报文元素 | 出现要求 | 非空约束 | 数据格式 | 说明 | |
TxCode | R | NOT NULL | N1..4 | 交易类型 | |
InstitutionID | R | NOT NULL | ANS1..8 | 机构编号 | |
TxSN | R | NOT NULL | ANS1..32 | 交易流水号 | |
Files | FileName | R | NOT NULL | ANS1..256 | 文件名称 例如: img_best.jpg |
FileContent | R | NOT NULL | ANS1.. | 文件内容 Base64 | |
Remark | O | ANS0..256 | 备注 |
响应报文:
报文元素 | 出现要求 | 非空约束 | 数据格式 | 说明 | |
Code | R | NOT NULL | N1..6 | 响应代码 | |
Message | R | NOT NULL | ANS1..256 | 响应消息 | |
TxCode | C | ANS1..4 | 交易类型 | ||
InstitutionID | C | ANS1..8 | 机构号 | ||
TxSN | C | ANS1..32 | 交易流水号 | ||
TraceNo | C | ANS1..32 | 系统跟踪号 | ||
Files | FileName | C | ANS1..256 | 文件名称 | |
FileID | C | ANS1..32 | 文件存储ID |
二、2301-活体验证(人脸识别)SDK端
1. 接口功能
根据姓名、身份证号、移动端APP采集图片,验证操作人真实性。需要将采集图片先通过3201接口上传到服务器,再发送2301验证请求。根据数据平台所提供的40-活体认证API 实例程序,机构方需将SDK集成到APP中。详细过程如下:
首先,APP调用sdk对图片进行处理,采集活体数据,返回加密字符串(base64)和2张图片的base64,key分别为delta,image_best和image_env。(app端将三个参数传送至服务端,保证数据在传输过程中不发生变化)
紧接着机构方服务端需要调用3201文件上传接口,原封不动的将图片传给平台(上传图片的base64string),得到返回的2个fileID。
接下来,机构方服务端调用2301接口,填写返回的2个fileID和第一步人脸识别后拿到的加密字符串delta,以及个人信息等参数,提交请求,返回是否认证成功的结果。(2个field 有顺序要求,不要填反。)
最后,app端能成功接收到识别是否成功后,联调基本完成。(机构方app端和机构方服务端联调,机构的服务端和数据平台联调,返回报文verification字段返回20,即为匹配)
2. 接口时序图
3.报文结构
请求报文:
报文元素 | 出现要求 | 非空约束 | 数据格式 | 说明 |
TxCode | R | NOT NULL | N1..4 | 交易类型 |
InstitutionID | R | NOT NULL | ANS1..8 | 机构编号 |
TxSN | R | NOT NULL | ANS1..32 | 交易流水号 |
Name | R | NOT NULL | AN1..50 | 姓名 |
IdentificationNumber | R | NOT NULL | AN1..50 | 证件号码 |
Delta | R | NOT NULL | ANS1... | 用于校验上传图片的加密字符串 |
ImageBest | R | NOT NULL | ANS1..32 | 质量最佳图片文件 ID(先通过接口3201上传图片,获取文件ID) |
ImageEnv | R | NOT NULL | ANS1..32 | 假脸判定图片文件 ID(先通过接口3201上传图片,获取文件ID) |
Threshold | O | ANS2 | 档位 T3 T4 T5 T6 |
|
Remark | O | ANS0..256 | 备注 |
响应报文:
报文元素 | 出现要求 | 非空约束 | 数据格式 | 说明 | |
Code | R | NOT NULL | N1..6 | 响应代码 | |
Message | R | NOT NULL | ANS1..256 | 响应消息 | |
TxCode | C | ANS1..4 | 交易类型 | ||
InstitutionID | C | ANS1..8 | 机构号 | ||
TxSN | C | ANS1..32 | 交易流水号 | ||
TraceNo | C | ANS1..32 | 系统跟踪号 | ||
Verification | C | N2 | 查询状态 20=认证成功 30=认证失败 |
||
ResponseCode | C | N0..4 | 通道响应代码 | ||
ResponseMessage | C | ANS0..256 | 通道响应消息 | ||
VerificationScore | C | NOT NULL | ANS0..8 | 人脸验证得分 | |
VerifyThreshold | T3 | C | NOT NULL | ANS0..8 | 风险为千分之一的验证门槛 |
T4 | C | NOT NULL | ANS0..8 | 风险为万分之一的验证门槛 | |
T5 | C | NOT NULL | ANS0..8 | 风险为十万分之一的验证门槛(T5为默认验证标准) | |
T6 | C | NOT NULL | ANS0..8 | 风险为百万分之一的验证门槛 |
三.报文样例
[!TIP] (测试数据不校验数据真实性,默认为验证结果为匹配,若验证其他结果,可查看“总体规范-6.1.2.4 Remark 备注”)
3201-文件上传接口请求地址与活体验证类接口不同,需注意接口地址,具体可查看交易地址
1.3201报文样例
请求报文(InstitutionID由中金分配):
{
"TxCode":"3201",
"InstitutionID":"XXXXXX",
"TxSN":"202212051108083247844594572",
"Files":[
{
"FileContent":"iVBORw0KGg......5ErkJggg==",
"FileName":"1.png"
}
{
"FileContent":"iVBORw0KGg......5ErkJggg==",
"FileName":"2.png"
}
],
"Remark":""
}
响应报文:
{
"TxCode":"3201",
"Message":"SUCCESS",
"InstitutionID":"XXXXXX",
"TxSN":"202212051108083247844594572",
"Files":[
{ "FileName":"1.png",
"FileID":"2212061548260686431491336"
}
{
"FileName":"2.png",
"FileID":"2212061548261148361354483"
}
],
"Code":"2000",
"TraceNo":"2212051116273721312018597"
}
2.2301报文样例
请求报文(InstitutionID由中金分配):
{
"TxCode":"2301",
"IdentificationNumber":"330323198203191841",
"InstitutionID":"000020",
"Delta":"nHjkmcy7OtTBi41559h3j+/.../+USBVnwzVa32m8=",
"TxSN":"202212071402123990564552621",
"ImageBest":"2212061548260686431491336",
"Name":"陈陈陈",
"ImageEnv":"2212061548261148361354483",
"Remark":"",
"Threshold":"T5"
}
响应报文:
{
"VerificationScore":"80",
"ResponseCode":"0000",
"TxCode":"2301",
"Message":"SUCCESS",
"InstitutionID":"000020",
"VerifyThreshold":
{
"T4":"69.315",
"T5":"74.399",
"T6":"78.038",
"T3":"62.169"
},
"TxSN":"202212071402123990564552621",
"Verification":"20",
"ResponseMessage":"匹配",
"Code":"2000",
"TraceNo":"2212071457391991112019082"
}
该文档未解决您的疑问?
查看常见问题