# 实名四要素身份时间戳/数字证书服务API

在验证用户身份信息(姓名、身份证、身份证有效期开始时间、身份证有效期结束时间)通过后签发具有法律效力的第三方可信时间戳/数字证书

# 一、公共参数

  • 请求地址:http://api.spiderid.cn/api/router/rest,https://api.spiderid.cn/api/router/rest

  • 服务接口名称(即公共参数method的值): realid.idcard.fourVerify

  • 请求方式:POST或GET

# 二、请求参数

名称 类型 是否必须 描述
realname String 身份证姓名,中文;参数支持数据加密,详情参照加密方法说明
idcard String 身份证号码,18位;参数支持数据加密,详情参照加密方法说明
idStartDate String 身份证有效期开始时间,8位;格式:yyyyMMdd
idEndDate String 身份证有效期结束时间,8位;格式:yyyyMMdd,如果为长期,支持"长期"以及"00000000"
issueType String 签发类型 默认evc,tsp 时间戳, evc 事件证书
digest String 摘要值,SM3算法
event String 事件描述,evc 事件证书时设置
async String 是否开启异步签发,默认 false 为同步(将会影响性能)

请求示例:

http或https://api.spiderid.cn/api/router/rest?
realname=XXX
&idcard=XXX
&idStartDate=XXX
&idEndDate=XXX
&<[公共请求参数]>

# 三、响应参数

data结果信息 类型 描述
valid Boolean true:一致; false:不一致或库中无此号
message String 描述
incorrect Integer 返回码
certificate String 证书,签发类型 evc 时返回
signature String 证书签名结果 base64编码 ,签发类型 evc 时并且digest不为空返回
trustedtimestamp String 时间戳,签发类型 tsp 时返回

# 四、成功示例

JSON示例

{
  "code": 0,
  "requestId": "6c576...",
  "data": {
      "valid": true ,
      "incorrect": 100 ,
      "trustedtimestamp": "Mz..." ,
      "message": "一致"
  },
  "message": "success"
}

# 五、失败示例

JSON示例

{
  "code": 0,
  "requestId": "dsd24...",
  "data": {
       "message": "认证失败" ,
       "incorrect": 900 ,
       "valid": false
  },
  "message": "success"
}

# 六、返回码说明(incorrect)

返回码 描述 是否收费
100 一致
101 不一致
102 库中无此号

# SDK 请求示例

        //提供的url
        String url = "http://api.spiderid.cn/api/router/rest";
        //您的appKey
        String appkey = "XXX";
        //您的appSecret
        String secretKey = "XXX";

        //身份证姓名,注意不要有空格
        String realname = "XXX";
        //身份证号码是18位的,最后一位如果是大写X转换为x,注意不要有空格
        String idcard = "XXX";
        //身份证开始有效期 8位
        String idStartDate = "XXX";
        //身份证开始有效期 8位,如果为长期,支持"长期"以及"00000000"
        String idEndDate = "XXX";
        //签发类型 默认evc,tsp 时间戳, evc 事件证书
        String issueType = "evc";

        //1.默认客户端
        ApiClient apiClient = new DefaultApiClient(url, appkey, secretKey);

        //2.调用出错自动重试客户端
        IdcardFourVerifyRequest req = new IdcardFourVerifyRequest();
        req.setIssueType(issueType);
        req.setRealname(realname);
        req.setIdcard(idcard);
        req.setIdStartDate(idStartDate);
        req.setIdEndDate(idEndDate);

        //true 开启异步 false 关闭异步(默认)
        req.setAsync(false);

        try {
            IdcardVerifyResponse response = apiClient.execute(req);
            //后续业务处理
            System.out.println(JSON.toJSONString(response));
        } catch (ApiException e) {

            e.printStackTrace();

        }
最后更新于: 5/10/2024, 9:56:08 AM