LOGO

身份证二要素

通过姓名、身份证号查询信息是否一致。适用于金融行业、电子商务平台、公共服务领域等

¥0.00(约0.00元每次)

套餐

新用户赠送套餐

¥0.00/5次

新用户特惠套餐

¥40.00/1000次

标准套餐

¥800.00/10000次

进阶套餐

¥7000.00/100000次

立即申请
API介绍
对接文档
示例代码
接口测试
功能介绍
核验身份信息
通过姓名和身份证号码,查询是否一致或不一致,验证身份的真实有效性
官方通道
直连官方渠道,确保获取信息准确和稳定
极速响应
毫秒级响应速度,精准实时完成身份核验
服务稳定
7X24小时数据稳定响应服务
准确率
>99.99%
响应速度
约250ms
更新频率
官方同步
计费方式
根据结果计费
应用场景
金融领域
银行、证券等金融机构在用户开设账户时,利用该 API 验证用户填写的身份信息是否一致,确保客户身份真实可靠,降低欺诈风险,保护金融机构和客户的资金安全
电商平台
验证新用户注册时填写的身份证信息是否匹配,防止恶意注册虚假账号,提高平台用户信息的真实性和可信度
社交平台
帮助社交平台确认用户注册身份认证信息的真实性,防止用户使用虚假信息注册账号,减少虚假账号和恶意行为的发生,如发布不良信息、进行诈骗等,维护平台的安全和秩序
医疗健康领域
在线医疗平台注册账号、预约挂号、问诊咨询时,平台通过验证用户身份信息一致性,防止虚假账号注册,便于医生准确了解患者信息,同时保护患者隐私和医疗数据安全
使用流程
注册、登录
注册并登录您的账号
立即注册
完成实名认证
进行个人或企业认证
申请和调试API
申请API和完成测试调试请求
购买和上线使用
充值购买套餐,正式在您的系统集成上线使用API
服务保障
稳定高效
提供高可用、低延迟的服务,实施严格的安全措施,确保业务的稳定运行和数据安全
服务完善
专业团队提供全方位的售前和售后服务,随时解决您的疑问和问题
合规安全
严格遵守数据保护法规,官方直连获取数据,确保数据的合法、合规。
持续更新
提供多样接口,并持续更新,以满足您不断变化的业务和商业需求。
身份证二要素
请求路径
POST
接口说明
通过姓名、身份证号码查询信息是否一致。
请求信息
请求头
Content-Type
application/x-www-form-urlencoded
Auth_Token
签名结果,具体请查看签名规则
Sign_Type
签名结果,具体请查看签名规则
请求参数说明
响应参数
响应参数说明
响应示例
成功响应
{
    "code": 0,
    "msg": "操作成功",
    "result": {
        "age": "34",
        "birthday": "19910803",
        "city": "赣州市",
        "country": "信丰县",
        "createTime": "2025-04-28 14:46:04",
        "gender": "1",
        "orderId": "2025424000000001005",
        "orderNumber": "512025042830000000550625",
        "province": "江西省",
        "result": "01"
    }
}
失败响应
{
    "code": 400,
    "msg": "业务处理失败,请稍侯重试",
    "result": null
}
签名规则
所有的主动请求的接口都需要在请求头中传入签名值,需要设置的2个请求头名称:Auth_Token和Sign_Type。下面是分别介绍2个请求头的数据签名规则。 公共参数如下:
第一步:将以上公共参数按以下顺序拼接,并md5加密后小写后传入到signMd5中。 "memberId={memberId}dateTime={dateTime}version={v1}key={appKey}"
第二步:将公共参数按json格式数据设置到请求头Auth_Token中。 例如: Auth_Token={"signMd5":"11c636b1e98c1949768b0117a437145d","version":"v1","dateTime":"1744613181613","memberId":"80000001"}
第三步:并且在请求头中设置签名方式,名称为:Sign_Type。目前系统支持的签名方式有:md5。 例如:Sign_Type=md5
响应码
响应码说明
身份证二要素
Java
PHP
Python
C#
复制代码
package com.example.api.V105;

import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;

import static org.junit.jupiter.api.Assertions.*;
import java.net.HttpURLConnection;
import java.net.URL;
import java.io.*;
import java.nio.charset.StandardCharsets;
import java.security.MessageDigest;
import java.util.*;
import java.util.stream.Collectors;
import java.util.Base64;

public class ApiTest1005 {

    // 签名相关的常量
    private static final String SIGN_KEY = "XXXXXX"; // 替换为实际的签名密钥
    private static final String USER_ID = "XXXXXXX"; // 替换为实际的用户编号

    public static void main(String[] args) throws Exception {
        String apiUrl = "https://api.slsj.com/api/idCard/id-card-auth/query";
        String orderId = "1005001";
        String name = "张三";
        String idCard = "440804199111061732";
   
        // 准备请求参数
        Map<String, Object> params = new HashMap<>();
        params.put("orderId", orderId);
        params.put("name", name);
        params.put("idCard", idCard);

        testVerification(apiUrl, params);
    }

    // 获取Auth_Token的方法
    private static String getAuthToken() throws Exception {
        // 获取当前时间戳
        long timestamp = System.currentTimeMillis();

        // 按照文档拼接待加密字符串
        String toEncrypt = "memberId=" + USER_ID + "dateTime=" + timestamp + "version=v1" + "key=" + SIGN_KEY;

        // MD5加密
        MessageDigest md = MessageDigest.getInstance("MD5");
        byte[] digest = md.digest(toEncrypt.getBytes(StandardCharsets.UTF_8));
        String md5Result = bytesToHex(digest).toLowerCase();

        // 创建鉴权Token的JSON对象
        JSONObject authTokenObj = new JSONObject();
        authTokenObj.set("memberId", USER_ID);
        authTokenObj.set("dateTime", timestamp);
        authTokenObj.set("version", "v1");
        authTokenObj.set("signMd5", md5Result);
        
        String authToken = authTokenObj.toString();
        return authToken;
    }

    // 辅助方法:将字节数组转换为十六进制字符串
    private static String bytesToHex(byte[] bytes) {
        StringBuilder result = new StringBuilder();
        for (byte b : bytes) {
            result.append(String.format("%02x", b));
        }
        return result.toString();
    }

    public static void testVerification(String apiUrl,Map<String, Object> params) throws Exception {        
        // 获取鉴权Token
        String authToken = getAuthToken();
        
        // 发送请求
        HttpResponse response = HttpRequest.post(apiUrl)
            .header("Content-Type", "application/x-www-form-urlencoded")
            .header("Auth_Token", authToken)
            .header("Sign_Type", "md5")
            .form(params)
            .execute();
        
        // 输出响应结果
        int status = response.getStatus();
        String responseBody = response.body();
        
        System.out.println("响应状态码: " + status);
        System.out.println("响应内容: " + responseBody);
        
        // 验证响应码
        assertEquals(HttpURLConnection.HTTP_OK, status, "Response code should be 200");
        
        // 解析响应内容(假设响应是JSON格式)
        // JSONObject responseJson = JSONUtil.parseObj(responseBody);
    }
} 
复制代码
代码信息添加中...
复制代码
import hashlib
import json
import time
import requests

# 用户ID和密钥
user_id = "xxxxxx"  # 替换为实际的用户编号
signature_key = "xxxxxxxxxxxxxxx"   # 替换为实际的签名密钥

# 版本号
version = "v1"


# 生成加密签名
def generate_auth_token():
    query_time = int(time.time() * 1000)
    original_string = f'memberId={user_id}dateTime={query_time}version={version}key={signature_key}'
    md5_result = hashlib.md5(original_string.encode('utf-8')).hexdigest()
    auth_token = {
        "memberId": user_id,
        "dateTime": query_time,
        "version": version,
        "signMd5": md5_result

    }
    return auth_token


# 请求接口并打印响应结果
request_url = 'https://api.slsj.com/api/idCard/id-card-auth/query'
params = {
    "orderId": "20250416094659001",
    "name": "xxx",
    "idCard": "xxxxxxxxxxxxxxxxxx"
}

headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Auth_Token': json.dumps(generate_auth_token()),
           'Sign_Type': 'md5'}
response = requests.post(headers=headers, url=request_url, data=params)
if response.status_code == 200:
    print(response.json())
else:
    print(response.text)
复制代码
代码信息添加中...
APILOGO

身份证二要素

ID:600

申请次数

59

收藏次数

18

认证要求

个人
企业

场景审核

需要

联系方式

联系电话:

400-000-6665

联系邮箱:

suilian@suiliantech.com

在线客服: