电子合同统一接口文档

版本维护说明

序号 版本 作者 日期 说明
01 V1.0 zhangwei 20220506 新增:企业三要素接口:/v1/identity/verify/company3Element
02 V1.0 zhangwei 20220510 新增:增加通过印章id获取印章详情接口:/v1/seal/details
03 V1.0 zhangwei 20220510 新增:增加获取个人可使用印章接口:/v1/user/seal/queryAuthSeals
04 v1.0 zhangwei 20220510 新增:增加通过企业ID获取用户列表信息接口:/v1/company/users
05 V1.0 zhangwei 20220510 新增:增加关闭授权接口:/v1/seal/company/offAuth
06 v1.0 zhangwei 20220523 修改:/v1/signFlow/create增加字段completeCallUrl,使用电子合同页面签署完成后回调通知业务系统签署完成。回调地址为get请求,电子合同会附加两个个参数:callUrl?signFlowId=签署事件ID&eventStatus=1
07 v1.2 xuqinglei 20221201 调整接口中用户信息参数,增加通过身份证、姓名、手机号自动添加新用户,印章管理只提供企业部分印章管理,签署流程增加撤销和更新签署文件,签署流程创建签署文件增加Base64字符串上传 和 模板在线合成
08 v1.3 xuqinglei 20230102 创建流程时增加dataType支持设置签署日期、签名及公章的位置,增加了回调方式的java实例
09 v1.4 lijade 20230209 增加ukey绑定的后台接口/v1/user/common/personal
10 v1.5 xuqinglei 20230224 增加直接给文件进行签名盖章接口 /v1/signFlow/addSeal
11 v1.6 xuqinglei 20230330 增加用户信息查询接口 /v1/user/common/query ; 创建企业接口增加返回管理员ID等信息
12 v1.7 xuqinglei 20230330 流程创建接口/v1/signFlow/create 签署单位增加了统一信用代码
13 v1.8 xuqinglei 20230402 签署回调增加了下节点签署人信息nextSigners
14 v1.9 xuqinglei 20230404 模板创建接口增加fileKey参数可以重新合成文件,同时调整动态扩展行的参数及实现逻辑
15 v1.10 xuqinglei 20230411 企业接口增加下属企业创建/v1/company/subsidiary/create 和 下属企业删除/v1/company/subsidiary/delete
16 v1.11 xuqinglei 20230413 创建流程接口增加operCompanyId及operCompanyUniqueId,合同所属企业信息及合同发起时计费的企业
17 v1.12 xuqinglei 20230413 签署回调增加接收实例代码 及 回调数据解密代码
18 v1.13 lijd 20231009 新增单点登录接口
19 v1.14 lijd 20231107 新增查询印章盖章记录
20 V1.15 zhangming 20240409 新增-V1接口:模板信息查询(/v1/template/info)、签署催办(/v1/signFlow/doUrge)、查询签署流程信息(/v1/signFlow/getFlowInfo); 修改-模板列表查询返回信息新增fileKey;
21 V1.16 zhangming 20240423 修改-V1接口:创建签署流程(/v1/signFlow/create) 支持不签署节点设置;
22 V1.17 zhangming 20240424 修改-V1接口:获取企业模板信息(/v1/template/info) 数据项信息修改;

接口安全认证

Header说明

Header名称 是否必须 说明
Content-type 值为:application/json
DJ-Date 取当前时间,格式:yyyyMMddHHmmss
DJ-Content-Md5 请求内容数据的MD5值
DJ-Authorization 签名

签名规则

Header说明
Signature计算方法

Signature = getHmacSignSha1( DJ-Content-MD5 + “” + Content-Type + “” + DJ-Date,appSecret )

getHmacSignSha1 Java实现

    private final static String CHAR_SET = "UTF-8";
    private final static String HAMC_SHA1 = "HmacSHA1";   


    /**
     * hmac_sha1 加密
     * @param content  内容
     * @param key 加密秘钥
     * @return 经过base64编码后的hmac
     */
    public static String getHmacSignSha1(String content,String appKey){
        return getHmacSign(content, key, HAMC_SHA1);
    }

    /**
     * hmac+签名算法 加密
     * @param content  内容
     * @param key 加密秘钥
     * @param hamaAlgorithm hamc签名算法名称:例如HmacMD5,HmacSHA1,HmacSHA256
     * @return 经过base64编码后的hmac
     */
    public static String getHmacSign(String content,String key,String hamaAlgorithm){
        byte[] result = null;
        try {
            //根据给定的字节数组构造一个密钥,第二参数指定一个密钥算法的名称
            SecretKeySpec signinKey = new SecretKeySpec(key.getBytes(), hamaAlgorithm);
            //生成一个指定 Mac 算法 的 Mac 对象
            Mac mac = Mac.getInstance(hamaAlgorithm);
            //用给定密钥初始化 Mac 对象
            mac.init(signinKey);
            //完成 Mac 操作
            byte[] rawHmac;
            rawHmac = mac.doFinal(content.getBytes(CHAR_SET));
            //byte字节数组转换16进制,需系统自己实现。
            result = DJHex.byteArrayToHexString(rawHmac);
        } catch (NoSuchAlgorithmException e) {
            System.err.println(e.getMessage());
        } catch (InvalidKeyException e) {
            System.err.println(e.getMessage());
        }  catch (IllegalStateException | UnsupportedEncodingException e) {
            System.err.println(e.getMessage());
        }
        if (null != result) {
            return new String(result);
        } else {
            return null;
        }
    }

接口对接流程

可信签接口调用

可信签接口调用

企业管理

创建企业

接口描述:

    用于创建企业信息及企业下面的组织机构信息

  1. 一个统一社会信信用代码只能创建一个企业
  2. 企业下部门信息,按照部门名称+统一信用代码进行检查,如果存在直接返回以前的部门ID

服务名称:

    /v1/company/common/create

请求方式:

    POST

请求参数

参数 类型 必须 描述
name string true 企业名称
registerNo string true 统一社会信用代码
legalPerson string true 企业法人姓名
address string false 公司注册地址
adminUser adminUserObj true 公司管理员用户
organizeList organizeArray false 公司内部组织机构
uniqueId string true 业务系统中的唯一企业ID
accountId string false 操作者账号
accountUniqueId string false 操作者业务系统的唯一用户ID

adminUserObj

参数 类型 必须 描述
accountId string false 可信签用户唯一账号,accountId 、 uniqueId、userName 不能同时为空
uniqueId string false 业务系统中用户唯一标识,accountId 、uniqueId、userName 不能同时为空
userName string false 企业管理员姓名,accountId 、uniqueId、userName 不能同时为空
mobile string false 企业管理员手机号,管理员登录可信签系统的账号,默认密码为身份证后6位,当userName不为空,此字段必须有值
licenseType int true 证件类型: 1. 身份证 2. 中国护照 3. 港澳居民来往内地通行证 4. 台胞证,当userName不为空,此字段必须有值
licenseNumber string true 证件号码,当userName不为空,此字段必须有值

organizeArray

参数 类型 必须 描述
name string true 部门名称
uniqueId string false 业务系统部门唯一标识
organizeType int true 机构类型,1-法人公司 2-机构
parentId string false 可信系统中父机构ID,为空时默认添加到根节点
registerNo string false 统一社会信用代码,机构类型为1时,此参数值不能为空
legalPerson string false 企业法人姓名,机构类型为1时,此参数值不能为空
address string false 公司注册地址

响应参数

参数 类型 描述
code int 响应码,200:成功
data createCompanyExtendResult
message string 响应信息

createCompanyExtendResult

参数 类型 描述
companyId string 企业ID
status string 返回企业新增或修改
adminResult adminUserResult 企业管理员返回信息
organizeList createCompanyofOrginzeList

createCompanyofOrginzeList

参数 类型 描述
organizeId string 组织机构ID
uniqueId string 业务系统部门唯一标识,如果创建的时候有值侧返回
status string 返回机构新增或修改

adminUserResult | 参数 | 类型 | 描述 | | ----------- | ------ | ------------------- | | accountId | string | 管理员用户ID | | uniqueId | string | 业务系统用户唯一标识,如果创建的时候有值侧返回 | | userName | string | 管理员用户姓名 |

请求json

{
    "name":"企业名称",
    "registerNo":"统一社会信用代码",
    "legalPerson":"企业法人姓名",
    "address":"企业地址",
    "adminUser": {
      /*查询已有用户:accountId  uniqueId  | 新创建用户:userName、mobile、licenseType、licenseNumber */
      "accountId":"企业管理员ID",
      "uniqueId":"操作者业务系统唯一用户ID",      
      "userName":"管理员姓名",
      "mobile":"管理员手机号",
      "licenseType":1,  //证件类型: 1. 身份证 2. 中国护照 3. 港澳居民来往内通行证 4. 台胞证
      "licenseNumber": "1101121991050XXXXX",
    },
    "adminResult":{
        "accountId":"企业管理员ID",
        "uniqueId":"操作者业务系统唯一用户ID",      
        "userName":"管理员姓名"
    },
    "organizeList":[{
        "name":"部门名称1",
        "uniqueId":"业务系统中唯一机构ID",
        "organizeType":1,
        "parentId":"父机构ID",
        "registerNo":"机构的统一信用代码",
        "legalPerson":"机构法人姓名",
        "address":"机构的注册地址"
      },
      {
          "name":"部门名称1",
          "uniqueId":"业务系统中唯一机构ID",
          "organizeType":2,
          "parentId":"父机构ID"
         
      }
    ],
    "uniqueId":"业务系统关联唯一标识",
    "accountId":"操作者ID",
    "accountUniqueId":"操作者业务系统唯一用户ID"
  }

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "companyId":"",
        "status":"新增/修改",
        "organizeList":[
            {
                "organizeId":"组织机构ID",
                "uniqueId":"业务系统中唯一机构ID",
                "status":"新增/修改",
            },
            {
                "organizeId":"组织机构ID2",
                "uniqueId":"业务系统中唯一机构ID",
                "status":"新增/修改",
            }
        ]
    }
}

删除企业信息

接口描述:

    用于删除企业信息

  1. 删除机构将同时吊销此机构下的证书,注销此机构下的印章

  2. 含有未签署的任务,不能删除

服务名称:

    /v1/company/common/delete

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID、uniqueId其一必须有值,如果两者都有值,则以companyId为准
uniqueId string false 1. 企业关联的业务系统方ID,当companyId为空时生效。2. 如果companyId和uniqueId都有值的情况下,以companyId为准。
accountId string false 操作者账号
accountUniqueId string false 业务系统关联的唯一用户ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "companyId":"企业ID",
    "uniqueId":"业务系统方关联的企业唯一标识"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{}
}

修改企业信息

接口描述:

    用于修改企业信息及企业下机构信息 > 1. 如果企业已经做实名认证,如果对企业名称、统一信用代码或企业法人进行修改,企业需要重新做实名认证,企业所属的印章会改成停用 > 2. 企业下属的法人机构,如果已做实名认证机构,修改机构名称、机构统一信用代码或机构的法人进行修改,机构需要重新做实名认证,机构所属的印章会改成停用

服务名称:

    /v1/company/common/update

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID、uniqueId其一必须有值,如果两者都有值,则以companyId为准,且更新uniqueId的值
uniqueId string false 1. 企业关联的业务系统方ID,当companyId为空时生效。2. 如果companyId和uniqueId都有值的情况下,以companyId为准,且更新此值。
registerNo string false 统一社会信信用代码
name string false 企业名称
legalPerson string false 企业法人姓名
address string false 公司注册地址
adminUser adminUserObj false 公司管理员用户
organizeList updateCompanyExtendResult false 组织机构信息
accountId string false 操作者账号
accountUniqueId string false 业务系统关联的唯一用户ID

adminUserObj

参数 类型 必须 描述
accountId string false 可信签用户唯一账号,accountId 、 uniqueId、userName 不能同时为空
uniqueId string false 业务系统中用户唯一标识,accountId 、uniqueId、userName 不能同时为空
userName string false 企业管理员姓名,accountId 、uniqueId、userName 不能同时为空
mobile string false 企业管理员手机号,管理员登录可信签系统的账号,默认密码为身份证后6位,当userName不为空,此字段必须有值
licenseType int true 证件类型: 1. 身份证 2. 中国护照 3. 港澳居民来往内地通行证 4. 台胞证,当userName不为空,此字段必须有值
licenseNumber string true 证件号码,当userName不为空,此字段必须有值

updateCompanyExtendResult

参数 类型 必须 描述
organizeId string false 组织机构Id、uniqueId其一必须有值,两者都有值的情况下,以organizeId为准,且更新机构的uniqueId
uniqueId string false 业务系统组织机构唯一标识。当organizeId为空,且uniqueId在此企业下未查找到时,认为新增组织机构
name string false 组织机构名称
organizeType int true 机构类型,1-法人公司 2-机构
parentId string false 可信系统中父机构ID,为空时默认添加到根节点
registerNo string false 统一社会信用代码,机构类型为1时,此参数值不能为空
legalPerson string false 企业法人姓名,机构类型为1时,此参数值不能为空
address string false 公司注册地址

响应参数

参数 类型 描述
code int 响应码,200:成功
data updateCompanyExtendResult
message string 响应信息

updateCompanyExtendResult

参数 类型 描述
companyId string 企业ID
status string 返回企业新增或修改
organizeList updateCompanyofOrginzeList

updateCompanyofOrginzeList

参数 类型 描述
organizeId string 组织机构ID
uniqueId string 业务系统部门唯一标识,如果创建的时候有值侧返回
status string 返回机构新增或修改

请求json

{
    "companyId":"企业ID",
    "uniqueId":"业务系统方关联的企业ID",    
    "name":"企业名称",
    "registerNo":"统一社会信用代码",
    "legalPerson":"企业法人姓名",
    "address":"企业地址",
    "adminUser": {
      /*查询已有用户:accountId  uniqueId  | 新创建用户:userName、mobile、licenseType、licenseNumber */
      "accountId":"企业管理员ID",
      "uniqueId":"操作者业务系统唯一用户ID",      
      "userName":"管理员姓名",
      "mobile":"管理员手机号",
      "licenseType":1,  //证件类型: 1. 身份证 2. 中国护照 3. 港澳居民来往内通行证 4. 台胞证
      "licenseNumber": "1101121991050XXXXX",
    },
    "organizeList":[{
        "organizeId":"组织机构ID",
        "name":"部门名称1",
        "uniqueId":"业务系统中唯一机构ID",
        "organizeType":1,
        "parentId":"父机构ID",
        "registerNo":"机构的统一信用代码",
        "legalPerson":"机构法人姓名",
        "address":"机构的注册地址"
      },
      {
          "organizeId":"组织机构ID",
          "name":"部门名称1",
          "uniqueId":"业务系统中唯一机构ID",
          "organizeType":2,
          "parentId":"父机构ID"
      }
    ],
    "accountId":"操作者ID",
    "accountUniqueId":"操作者业务系统唯一用户ID"    
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "companyId":"",
        "status":"新增/修改",
        "organizeList":[
            {
                "organizeId":"组织机构ID",
                "uniqueId":"业务系统中唯一机构ID",
                "status":"新增/修改",
            },
            {
                "organizeId":"组织机构ID2",
                "uniqueId":"业务系统中唯一机构ID",
                "status":"新增/修改",
            }
        ]
    }
}

绑定企业经办人

接口描述:

    用于绑定企业经办人,如果未指定组织机构绑定到企业下的默认部门中 > 1. 待绑定的用户可以通过accountId 或 uniqueId获取已有用户,也可以通过userName、mobile、licenseType、licenseNumber 新创建用户

服务名称:

    /v1/company/common/bindUser

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID、uniqueId其一必须有值,如果两者都有值,则以companyId为准
uniqueId string false 业务系统方关联的唯一标识,如果companyId和uniqueId两者都有值的情况下,以companyId为准
users bindUsers true 绑定的经办人用户列表
accountId string false 操作者账号
accountUniqueId string false 业务系统关联的唯一用户ID

bindUsers

参数 类型 必须 描述
accountId string false 可信签用户唯一账号,accountId 、 uniqueId、userName 不能同时为空
uniqueId string false 业务系统中用户唯一标识,accountId 、uniqueId、userName 不能同时为空
userName string false 用户姓名,accountId 、 uniqueId、userName 不能同时为空
mobile string false 用户手机号,登录可信签系统的账号,默认密码为身份证后6位,当userName不为空,此字段必须有值
licenseType int false 证件类型: 1. 身份证 2. 中国护照 3. 港澳居民来往内地通行证 4. 台胞证,当userName不为空,此字段必须有值
licenseNumber string false 证件号码,当userName不为空,此字段必须有值
isDefault int true 是否为默认用户:0非默认用户,1默认用户
job string false 用户所在部门的职务
organizeId string false 可信签组织机构ID,organizeId 和 organizeUniqueId 同时为空,用户绑定到默认部门下
organizeUniqueId string false 业务系统中唯一机构ID,organizeId 和 organizeUniqueId 同时为空,用户绑定到默认部门下

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "companyId":"企业ID",
    "uniqueId":"业务系统方关联ID",
    "users":[
        {
            /*查询已有用户:accountId  uniqueId  | 新创建用户:userName、mobile、licenseType、licenseNumber */
            "accountId":"账号ID",
            "uniqueId":"业务系统方关联的账号ID",
            "isDefault":"默认用户标识",
            "job":"法务",
            "organizeId":"组织机构ID",
            "organizeUniqueId":"业务系统关联唯一机构ID",

        },
        {
            "userName":"用户姓名",
            "mobile":"用户手机号",
            "licenseType":1,  //证件类型: 1. 身份证 2. 中国护照 3. 港澳居民来往内通行证 4. 台胞证
            "licenseNumber": "110112199105XXXXX",
            "isDefault":"默认用户标识2",
            "job":"合同管理员",
            "organizeId":"组织机构ID",
            "organizeUniqueId":"业务系统关联唯一机构ID",
        }
    ],
    "accountId":"操作者ID",
    "accountUniqueId":"操作者业务系统唯一用户ID"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{}
}

解绑企业经办人

接口描述:

    用于接触绑定企业经办人

服务名称:

    /v1/company/common/unBindUser

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID、uniqueId其一必须有值,如果两者都有值,则以companyId为准
uniqueId string false 业务系统方关联的唯一标识,如果companyId和uniqueId两者都有值的情况下,以companyId为准
accountId string false 操作者账号
accountUniqueId string false 业务系统关联的唯一用户ID
users unBindUsers true 绑定的经办人用户列表

unBindUsers

参数 类型 必须 描述
accountId string false 账号ID、uniqueId两者不能同时为空,两者都有值的情况下,以accountId为准
uniqueId string false 业务系统方关联的用户ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "companyId":"企业ID",
    "uniqueId":"业务系统方关联ID",
    "users":[
        {
            "accountId":"账号ID",
            "uniqueId":"业务系统方关联的账号ID"
        },
        {
            "accountId":"账号ID2",
            "uniqueId":"业务系统方关联的账号ID2"
        }
    ]
}

响应json

{
    "code":200,
    "message":"success",
    "data":{}
}

查询接口管理企业信息

接口描述:

    用于查询接口用户管理企业信息及集团的下属企业

服务名称:

    /v1/company/query

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyName string false 企业名称,作为企业查询条件,companyName like '%企业名称值%'
accountId string false 操作者账号
accountUniqueId string false 业务系统关联的唯一用户ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data List< companyInfo >
message string 响应信息

companyInfo

参数 类型 描述
companyId string 企业ID
companyName string 企业名称
uniqueId string 业务系统关联唯一企业标识ID
registerNo string 企业的统一信用代码
legalPerson string 企业法人姓名
address string 企业的注册地址
status string 企业状态:无效、未实名、已实名

请求json

{ 
    "companyName":"机构名称",
    "accountId":"操作者用户ID",
    "accountUniqueId":"业务系统关联的唯一用户ID"
}

响应json

{
    "code":200,
    "message":"success",
    "data":[
          {
              "companyId":"企业ID",
              "companyName":"企业名称1",
              "uniqueId":"业务系统中唯一企业ID",
              "registerNo":"企业的统一信用代码",
              "legalPerson":"企业法人姓名",
              "address":"企业的注册地址",
              "status":"企业状态"
          },
          {
              "companyId":"企业ID",
              "companyName":"企业名称2",
              "uniqueId":"业务系统中唯一企业ID",
              "registerNo":"企业的统一信用代码",
              "legalPerson":"企业法人姓名",
              "address":"企业的注册地址",
              "status":"企业状态"
          }
      ]     
    
}

查询机构信息

接口描述:

    用于查询企业下机构信息

服务名称:

    /v1/company/organizes

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID、uniqueId其一必须有值,如果两者都有值,则以companyId为准
uniqueId string false 1. 企业关联的业务系统方ID,当companyId为空时生效。2. 如果companyId和uniqueId都有值的情况下,以companyId为准。
organizeName string false 机构名称,作为机构查询条件,organizeName like '%机构名称值%'
accountId string false 操作者账号
accountUniqueId string false 业务系统关联的唯一用户ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data List< organizeInfo >
message string 响应信息

organizeInfo

参数 类型 描述
organizeId string 组织机构ID
organizeName string 机构名称
organizeNo string 组织机构编号
uniqueId string 业务系统关联唯一机构标识ID
parentId string 组织机构父ID
organizeType int 机构类型:1-法人机构 2-非法人机构
registerNo string 机构的统一信用代码
legalPerson string 机构法人姓名
address string 机构的注册地址

请求json

{
    "companyId":"企业ID",
    "uniqueId":"业务系统唯一单位标识ID",
    "organizeName":"机构名称",
    "accountId":"操作者用户ID",
    "accountUniqueId":"业务系统关联的唯一用户ID"
}

响应json

{
    "code":200,
    "message":"success",
    "data":[
          {
              "organizeId":"组织机构ID",
              "organizeName":"部门名称1",
              "organizeNo":"部门编号1",
              "uniqueId":"业务系统中唯一机构ID",
              "organizeType":2,
              "parentId":"父机构ID",
              "registerNo":"机构的统一信用代码",
              "legalPerson":"机构法人姓名",
              "address":"机构的注册地址"
          },
          {
              "organizeId":"组织机构ID",
              "organizeName":"部门名称2",
              "organizeNo":"部门编号2",
              "uniqueId":"业务系统中唯一机构ID",
              "organizeType":1,
              "parentId":"父机构ID",
              "registerNo":"机构的统一信用代码",
              "legalPerson":"机构法人姓名",
              "address":"机构的注册地址"
          }
      ]
     
    
}

获取企业用户列表

接口描述:

    获取企业下用户列表

服务名称:

    /v1/company/users

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID、uniqueId其一必须有值,如果两者都有值,则以companyId为准
uniqueId string false 业务系统方关联的唯一标识,如果companyId和uniqueId两者都有值的情况下,以companyId为准
organizeIdList array false 组织机构ID,不为空只返回指定机构下的用户

响应参数

参数 类型 描述
code int 响应码,200:成功
data List< users > 用户列表信息
message string 响应信息

users

参数 类型 描述
userId string 可信签用户唯一标识
userName string 用户名称
uniqueId string 用于关联业务系统的唯一用户标识
accountId string 用户登录账号ID
organizeId string 用户所属机构ID
organizeName string 用户所属机构名称
job string 用户职务

请求json

{
    "companyId":"企业ID",
    "uniqueId":"业务系统方关联ID",
    "organizeIdList":["组织机构ID1","组织机构ID2"]

}

响应json

{
    "code":200,
    "message":"success",
    "data":[
          {
              "userId":"可信签用户唯一标识",
              "userName":"用户名称",
              "uniqueId":"用户关联的唯一用户标识",
              "accountId":"用户登录账号",
              "organizeId":"组织机构ID",
              "organizeName":"组织机构名称",
              "job":"用户职务"
          },
          {
              "userId":"可信签用户唯一标识",
              "userName":"用户名称",
              "uniqueId":"用户关联的唯一用户标识",
              "accountId":"用户登录账号",
              "organizeId":"组织机构ID",
              "organizeName":"组织机构名称",
              "job":"用户职务"
          }
      ]
    
}

新增组织机构

接口描述:

    用于维护开发者账号所属企业的组织机构

服务名称:

    /v1/company/organize/create

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID、uniqueId其一必须有值,如果两者都有值,则以companyId为准,且更新uniqueId的值
uniqueId string false 1. 企业关联的业务系统方ID,当companyId为空时生效。2. 如果companyId和uniqueId都有值的情况下,以companyId为准,且更新此值。
organizeList organizeInfo false 组织机构信息
accountId string false 操作者账号
accountUniqueId string false 业务系统关联的唯一用户ID

organizeInfo

参数 类型 必须 描述
uniqueId string false 业务系统组织机构唯一ID。在企业下找uniqueId对应的组织机构时,修改原机构信息
name string false 组织机构名称
organizeType int false 机构类型,1-法人公司 2-机构 ,默认:2-普通机构
parentId string false 可信系统中父机构ID,为空时默认添加到根节点
registerNo string false 统一社会信用代码,机构类型为1时,此参数值不能为空
legalPerson string false 企业法人姓名,机构类型为1时,此参数值不能为空
address string false 公司注册地址

响应参数

参数 类型 描述
code int 响应码,200:成功
data List< organize>
message string 响应信息

organize

参数 类型 描述
organizeId string 组织机构ID
uniqueId string 业务系统方关联的组织机构编号

请求json

{
    "companyId":"企业ID",
    "uniqueId":"业务系统方关联的企业ID",
    "organizeList":[{       
        "name":"部门名称1",
        "uniqueId":"业务系统方关联部门ID",
        "organizeNo":"部门编号",
        "organizeType":2,
        "parentId":"父机构ID"        
      },
      {
          "name":"部门名称2",
          "uniqueId":"业务系统方关联部门ID",
          "organizeNo":"部门编号2",
          "organizeType":2,
          "parentId":"父机构ID"
      }
    ],
    "accountId":"操作者ID",
    "accountUniqueId":"操作者业务系统唯一用户ID"    
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
       "companyId":"企业ID",
       "uniqueId":"业务系统方关联的ID",
       "organizeList":[ {
            "organizeId":"组织机构ID",
            "uniqueId":"业务系统方关联的机构唯一标识1"
        },
        {
            "organizeId":"组织机构ID2",
            "uniqueId":"业务系统方关联的机构唯一标识2"
        }]
    }
}

修改组织机构

接口描述:

    用于修改开发者账号所属企业的组织机构

服务名称:

    /v1/company/organize/update

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID、uniqueId其一必须有值,如果两者都有值,则以companyId为准,且更新uniqueId的值
uniqueId string false 1. 企业关联的业务系统方ID,当companyId为空时生效。2. 如果companyId和uniqueId都有值的情况下,以companyId为准,且更新此值。
organizeList organizeInfo false 组织机构信息
accountId string false 操作者账号
accountUniqueId string false 业务系统关联的唯一用户ID

organizeInfo

参数 类型 必须 描述
organizeId string false 组织机构ID。 organizeId 和 uniqueId不能同时为空
uniqueId string false 业务系统组织机构唯一ID。organizeId为空,且uniqueId在此企业下未查找到时,认为新增组织机构
name string false 组织机构名称
organizeType int true 机构类型,1-法人公司 2-机构
parentId string false 可信系统中父机构ID,为空时默认添加到根节点
registerNo string false 统一社会信用代码,机构类型为1时,此参数值不能为空
legalPerson string false 企业法人姓名,机构类型为1时,此参数值不能为空
address string false 公司注册地址

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "companyId":"企业ID",
    "uniqueId":"业务系统方关联的ID",
    "organizeList":[{
        "organizeId":"组织机构ID",  
        "uniqueId":"业务系统方关联部门ID",
        "name":"部门名称1",  
        "organizeNo":"部门编号", 
        "organizeType":1,
        "parentId":"父机构ID",
        "registerNo":"机构的统一信用代码",
        "legalPerson":"机构法人姓名",
        "address":"机构的注册地址"
      },
      {
        "organizeId":"组织机构ID",  
        "uniqueId":"业务系统方关联部门ID",  
        "name":"部门名称1",
        "organizeNo":"部门编号1",
        "organizeType":2,
        "parentId":"父机构ID"
      }
    ],
    "accountId":"操作者ID",
    "accountUniqueId":"操作者业务系统唯一用户ID"    
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
    }
}

删除组织机构

接口描述:

    用于删除企业下的组织机构,如果组织机构下有用户不进行删除。

服务名称:

    /v1/company/organize/delete

请求方式:

    POST

请求参数

参数 类型 必须 描述
organizeId string false organizeId和uniqueId两者必有一个值非空,如果两个字段都有值,则以organizeId为准
uniqueId string false organizeId和uniqueId两者必有一个值非空,如果两个字段都有值,则以organizeId为准
companyId string false 企业ID,为空时直接用接口用户对应的企业ID值
accountId string false 操作者账号
accountUniqueId string false 业务系统关联的唯一用户ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
   "organizeId":"组织机构ID",
   "uniqueId":"业务系统方关联的组织机构ID",
   "companyId":"企业ID",
   "accountId":"操作者ID",
   "accountUniqueId":"业务系统关联的唯一用户ID"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
    }
}

新增下属企业

接口描述:

    用于维护开发者账号所属企业的下属企业信息

服务名称:

    /v1/company/subsidiary/create

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID、uniqueId其一必须有值,如果两者都有值,则以companyId为准,且更新uniqueId的值
uniqueId string false 1. 企业关联的业务系统方ID,当companyId为空时生效。2. 如果companyId和uniqueId都有值的情况下,以companyId为准,且更新此值。
subsidiaryList subsidiaryInfo false 下属企业或子公司信息
accountId string false 操作者账号
accountUniqueId string false 业务系统关联的唯一用户ID

subsidiaryInfo

参数 类型 必须 描述
companyId string false 企业ID、uniqueId其一必须有值,如果两者都有值,则以companyId为准,且更新uniqueId的值
uniqueId string false 1. 企业关联的业务系统方ID,当companyId为空时生效。2. 如果companyId和uniqueId都有值的情况下,以companyId为准,且更新此值。
registerNo string false 统一社会信用代码,机构类型为1时,此参数值不能为空
companyName string true 下属企业名称

响应参数

参数 类型 描述
code int 响应码,200:成功
data List< subsidiaryResult> 响应数据
message string 响应信息

subsidiaryResult

参数 类型 描述
companyId string 企业ID
status boolean true 添加成功,false 添加失败
message string 提示信息

请求json

{
    "companyId":"企业ID",
    "uniqueId":"业务系统方关联的企业ID",
    "subsidiaryList":[{       
        "companyId":"下属企业ID",
        "uniqueId":"业务系统方关联企业ID",
        "registerNo":"企业统一信用代码",
        "companyName":"下属公司名称",
      },
      {
        "companyId":"下属企业ID",
        "uniqueId":"业务系统方关联企业ID",
        "registerNo":"企业统一信用代码",
        "companyName":"下属公司名称",
      }
    ],
    "accountId":"操作者ID",
    "accountUniqueId":"操作者业务系统唯一用户ID"    
}

响应json

{
    "code":200,
    "message":"success",
    "data":[
        {
          "companyId": "公司ID1",
          "message": "添加成功!",
          "status": true
        },
        {
          "companyId": "公司ID2",
          "message": "添加失败!",
          "status": false
        }
    ]
}

删除下属企业

接口描述:

    用于删除开发者账号所属企业的下属企业信息

服务名称:

    /v1/company/subsidiary/delete

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID、uniqueId其一必须有值,如果两者都有值,则以companyId为准,且更新uniqueId的值
uniqueId string false 1. 企业关联的业务系统方ID,当companyId为空时生效。2. 如果companyId和uniqueId都有值的情况下,以companyId为准,且更新此值。
subsidiaryList List< subsidiaryInfo> false 下属企业或子公司信息
accountId string false 操作者账号
accountUniqueId string false 业务系统关联的唯一用户ID

subsidiaryInfo

参数 类型 必须 描述
companyId string false 企业ID、uniqueId其一必须有值,如果两者都有值,则以companyId为准,且更新uniqueId的值
uniqueId string false 1. 企业关联的业务系统方ID,当companyId为空时生效。2. 如果companyId和uniqueId都有值的情况下,以companyId为准,且更新此值。
registerNo string false 统一社会信用代码,机构类型为1时,此参数值不能为空

响应参数

参数 类型 描述
code int 响应码,200:成功
data List< subsidiaryResult> 响应数据
message string 响应信息

subsidiaryResult

参数 类型 描述
companyId string 企业ID
status boolean true 添加成功,false 添加失败
message string 提示信息

请求json

{
    "companyId":"企业ID",
    "uniqueId":"业务系统方关联的企业ID",
    "organizeList":[{       
        "companyId":"下属企业ID",
        "uniqueId":"业务系统方关联企业ID",
        "registerNo":"企业统一信用代码"
      },
      {
        "companyId":"下属企业ID",
        "uniqueId":"业务系统方关联企业ID",
        "registerNo":"企业统一信用代码"
      }
    ],
    "accountId":"操作者ID",
    "accountUniqueId":"操作者业务系统唯一用户ID"    
}

响应json

{
    "code":200,
    "message":"success",
    "data":[
        {
          "companyId": "公司ID1",
          "message": "删除成功!",
          "status": true
        },
        {
          "companyId": "公司ID2",
          "message": "删除失败!",
          "status": false
        }
    ]
}

用户管理

创建组织机构用户

接口描述:

    用于创建指定机构下的用户,如果未设置 organizeId 默认绑定在开发者账户所属企业下默认组织机构下面。

  1. 一个证件号码,仅允许创建一个用户,如果存证相同证件号的用户,直接返回原证件号的accountId
  2. 创建用户后,用户的初始默认密码为证件号后六位;如果用户已存在不更改原账号密码
  3. 建立组织机构与用户之间的隶属管理

服务名称:

    /v1/user/company/create

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 用户所属的公司ID,companyId 和 companyUniqueId都为空则绑定在开发者账号所属企业ID
companyUniqueId string false 业务系统关联企业唯一标识
userName string true 用户名称
licenseType int true 证件类型: 1. 身份证 2. 中国护照 3. 港澳居民来往内地通行证 4. 台胞证
licenseNumber string true 证件号码
mobile string false 手机号或者email有一项必填
email string false email或者手机号有一项必填
uniqueId string fasle 用于关联业务系统的唯一标识(一般为用户、员工编号)
organizeId string false 所属机构id, organizeId 和 organizeUniqueId都为空则绑定在企业下的默认组织机构
organizeUniqueId string false 业务系统关联唯一机构标识,organizeId 和 organizeUniqueId都为空则绑定在企业下的默认组织机构
job string false 用户所在部门职务
operAccountId string false 操作者账号
operAccountUniqueId string false 业务系统关联的唯一用户ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data retUserInfo
message string 响应信息

retUserInfo

参数 类型 描述
accountId string 可信签系统用户ID
uniqueId string 业务系统关联唯一用户ID

请求json

{
    "companyId":"公司ID",
    "uniqueId":"业务系统公司唯一标识",
    "userName":"张三",
    "licenseType":1,
    "licenseNumber": "11011219910506XXXX",
    "mobile":"18611888888",
    "email":"8988888@qq.com",    
    "uniqueId":"J8H6G8K4E3",
    "organizeId":"组织机构ID1",
    "organizeUniqueId":"业务系统关联唯一机构标识",
    "job":"法务"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
      "accountId":"可信签系统用户ID",
      "uniqueId":"业务系统关联唯一用户ID"
    }
}

机构批量导入用户

接口描述:

    用于创建指定机构下的用户,如果未设置 organizeId 默认绑定在开发者账户所属企业下默认组织机构下面。

  1. 一个证件号码,仅允许创建一个用户,如果存证相同证件号的用户,直接返回原证件号的accountId
  2. 创建用户后,用户的初始默认密码为证件号后六位;如果用户已存在不更改原账号密码
  3. 建立组织机构与用户之间的隶属管理

服务名称:

    /v1/user/company/batch/create

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 用户所属的公司ID,companyId 和 companyUniqueId都为空则绑定在开发者账号所属企业ID
companyUniqueId string false 业务系统关联企业唯一标识
userList List< batchUsers > true 批量导入用户信息
operAccountId string false 操作者账号
operAccountUniqueId string false 业务系统关联的唯一用户ID

batchUsers

参数 类型 必须 描述
userName string true 用户名称
licenseType int true 证件类型: 1. 身份证 2. 中国护照 3. 港澳居民来往内地通行证 4. 台胞证
licenseNumber string true 证件号码
mobile string false 手机号或者email有一项必填
email string false email或者手机号有一项必填
uniqueId string fasle 用于关联业务系统的唯一标识(一般为用户、员工编号)
organizeId string false 所属机构id, organizeId 和 organizeUniqueId都为空则绑定在企业下的默认组织机构
organizeUniqueId string false 业务系统关联唯一机构标识,organizeId 和 organizeUniqueId都为空则绑定在企业下的默认组织机构
job string false 用户所在部门职务

响应参数

参数 类型 描述
code int 响应码,200:成功
data list< retUserInfo >
message string 响应信息

retUserInfo

参数 类型 描述
accountId string 可信签系统用户ID
uniqueId string 业务系统关联唯一用户ID

请求json

{
    "companyId":"公司ID",
    "userList":[
      {
        "userName":"张三",
        "licenseType":1,
        "licenseNumber": "11011219910506XXXX",
        "mobile":"18611888888",
        "email":"8988888@qq.com",
        "uniqueId":"J8H6G8K4E3",
        "organizeId":"组织机构ID1",
        "organizeUniqueId":"业务系统关联唯一机构标识",        
        "job":"法务",        
      },
      {
        "userName":"张三",
        "licenseType":1,
        "licenseNumber": "11011219910506XXXX",
        "mobile":"18611888888",
        "email":"8988888@qq.com",
        "uniqueId":"J8H6G8K4E3",
        "organizeId":"组织机构ID1",
        "organizeUniqueId":"业务系统关联唯一机构标识",
        "job":"印章管理员"
      }
    ],
    "operAccountId":"操作用户ID",
    "operAccountUniqueId":"业务系统关联唯一用户标识" 
    
}

响应json

{
    "code":200,
    "message":"success",
    "data":[
        {
          "accountId":"可信签系统用户ID-1",
          "uniqueId":"业务系统关联唯一用户ID"
        },
        {
          "accountId":"可信签系统用户ID-2",
          "uniqueId":"业务系统关联唯一用户ID"
        }
     ]
}

修改组织机构用户

接口描述:

    用于修改企业用户信息(开发者账号绑定的企业) > 1. 用户已做实名认证不允许修改用户姓名、证件号类型、证件号码,其他信息可以进行更新。 > 2. 如果组织机构信息有变化,按照最新的建立机构隶属关系

服务名称:

    /v1/user/company/update

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 用户所属的公司ID,companyId 和 companyUniqueId 不能同时为空
companyUniqueId string false 业务系统关联企业唯一标识
accountId string true 可信签系统用户Id,accountId 和 uniqueId 不能同时
uniqueId string false 用于关联业务系统的唯一标识(一般为用户、员工编号)
userName string false 用户名称
licenseType string int 证件类型: 1. 身份证 2. 中国护照 3. 港澳居民来往内地通行证 4. 台胞证
licenseNumber string false 证件号码
mobile string false 手机号或者email有一项必填
email string false email或者手机号有一项必填
organizeId string false 所属机构id, organizeId 和 organizeUniqueId都为空则绑定在企业下的默认组织机构
organizeUniqueId string false 业务系统关联唯一机构标识,organizeId 和 organizeUniqueId都为空则绑定在企业下的默认组织机构
job string false 用户所在部门职
operAccountId string false 操作者账号
operAccountUniqueId string false 业务系统关联的唯一用户ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "companyId":"用户所属公司ID",
    "companyUniqueId":"业务系统关联企业唯一标识",
    "accountId":"用户账号ID,创建用户时返回",
    "uniqueId":"业务系统关联的唯一用户ID",
    "userName":"张三",
    "licenseType":1,
    "licenseNumber": "11011219910506XXXX",
    "mobile":"18611888888",
    "email":"8988888@qq.com",
    "organizeId":"组织机构ID1",
    "organizeUniqueId":"业务系统关联唯一机构标识",
    "job":"合同管理员",
    "operAccountId":"操作用户ID",
    "operAccountUniqueId":"业务系统关联唯一用户标识"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{ }
}

删除组织机构用户

接口描述:

    用于删除指定机构下的用户 > 1. 此功能只删除机构和用户隶属关系、单位印章授权、单位模板使用权限及流程使用权限 > 2. 如果有用户的待办事项不允许做删除操作 > 3. 个人账户信息不做删除

服务名称:

    /v1/user/company/delete

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 用户所属的公司ID,companyId 和 companyUniqueId 不能同时为空
companyUniqueId string false 业务系统关联企业唯一标识
accountId string true 待删除的用户ID
uniqueId string false 待删除唯一业务关联ID,业务系统绑定ID,accountId和uniqueId两者有一个传值即可,如果都传值,以accountId为准
operAccountId string false 操作者账号
operAccountUniqueId string false 业务系统关联的唯一用户ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "accountId":"用户账号ID,创建用户时返回",
    "uniqueId":"J8H6G8K4E3",
    "companyId":"企业ID",
    "operAccountId":"操作者ID",
    "operAccountUniqueId":"操作者关联用户ID"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{}
}

查询用户信息

接口描述:

    通过传入的用户姓名、手机号、身份证号、Email等信息查询满足需求的用户信息,以上4个参数至少1个有值。

服务名称:

    /v1/user/common/query

请求方式:

    POST

请求参数

参数 | 类型 | 必须 | 描述 |
------------------- | ------ | ----- | ---------------------------------------------------------- --------- |
userName | string | false | 用户名称 |
licenseType | int | false | 证件类型: 1. 身份证 2. 中国护照 3. 港澳居民来往内地通行证 4. 台胞证 |
licenseNumber | string | false | 证件号码 |
mobile | string | false | 手机号或者email有一项必填 |
email | string | false | email或者手机号有一项必填 |

响应参数

参数 类型 描述
code int 响应码,200:成功
data List< users > 用户列表信息
message string 响应信息

users

参数 类型 描述
userId string 可信签用户唯一标识
userName string 用户名称
uniqueId string 用于关联业务系统的唯一用户标识
accountId string 用户登录账号ID

请求json

{
    "userName":"张三",
    "licenseType":1,
    "licenseNumber": "11011219910506XXXX",
    "mobile":"18611888888",
    "email":"8988888@qq.com"
    
}

响应json

{
    "code":200,
    "message":"success",
    "data":[
        {
            "userId":"可信签用户唯一标识",
            "userName":"用户名称",
            "uniqueId":"用户关联的唯一用户标识",
            "accountId":"用户登录账号"
        },
        {
            "userId":"可信签用户唯一标识",
            "userName":"用户名称",
            "uniqueId":"用户关联的唯一用户标识",
            "accountId":"用户登录账号"
        }
    ]
}

增加ukey绑定的后台接口

接口描述:

返回个人中心地址,用于绑定ukey及其他信息

服务名称:

/v1/user/common/personal

请求方式:

POST

请求参数

参数 类型 必须 描述
companyId string true 用户所属的公司ID
accountId string true 用户ID:accountId、uniqueId、licenseNumber三个参数不能同时为空
uniqueId string false 唯一业务关联ID:accountId、uniqueId、licenseNumber三个参数不能同时为空
licenseNumber string false 证件号码:accountId、uniqueId、licenseNumber三个参数不能同时为空

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
  "accountId": "15699183993",
  "companyId": "ent001"
}

响应json

{
  "code": 200,
  "message": "success",
  "data": {
    "viewUrl": "http://127.0.0.1:8081/#/v1/personal?JZNXJTHPKS"
  }
}

单点登录

接口描述:

返回个人系统主页面

服务名称:

/v1/user/common/login

请求方式:

POST

请求参数

参数 类型 必须 描述
companyId string true 用户所属的公司ID(companyId、registerNo不能同时为空)
registerNo string false 企业统一信用代码(companyId、registerNo不能同时为空)
accountId string true 用户ID:accountId、uniqueId、licenseNumber三个参数不能同时为空
uniqueId string false 唯一业务关联ID:accountId、uniqueId、licenseNumber三个参数不能同时为空
licenseNumber string false 证件号码:accountId、uniqueId、licenseNumber三个参数不能同时为空

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
  "accountId": "15699183993",
  "companyId": "ent001"
}

响应json

{
  "code": 200,
  "message": "success",
  "data": {
    "viewUrl": "http://127.0.0.1:8081/#/v1/login?JZNXJTHPKS"
  }
}

认证管理

运营商三要素验证

接口描述:

    采用运营商三要素接口,验证个人用户身份

服务名称:

    /v1/identity/verify/mobile3Element

请求方式:

    POST

请求参数

参数 类型 必须 描述
accountId string false 待认证用户账号ID
uniqueId string false 业务系统关联的唯一用户账号ID
idCard string true 身份证号码
userName string true 用户真实姓名
mobile int true 手机号
verifyCode stirng false 短信验证码,非必填。如果为空,则不进行短信验证码校验

响应参数

参数 类型 描述
code int 响应码,200:成功
data verifyInfo 验证结果
message string 响应信息

verifyInfo

参数 类型 描述
flowId int 验证流水号
provider string 验证服务商

请求json

{
    "accountId":"用户登录ID",
    "uniqueId":"业务系统对接方关联的唯一用户ID",
    "idCard":"身份证号码",
    "userName":"用户姓名",
    "mobile":"手机号",
    "verifyCode":"短信验证码"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "flowId":"验证流水号",
        "provider":"验证服务商"
    }
}

银行卡四要素

接口描述:

   使用个人姓名、身份证号、银行卡号和银行预留手机号做一致性校验

服务名称:

    /v1/identity/verify/bank4Element

请求方式:

    POST

请求参数

参数 类型 必须 描述
accountId string false 待认证用户ID
uniqueId string false 业务系统方关联的唯一用户ID
cardNo string true 身份证号
name string true 姓名
bankCardNo string true 银行卡号
mobile string true 预留手机号
verifyCode string true 短信验证码

响应参数

参数 类型 描述
code int 响应码,200:成功
data verifyInfo 验证结果
message string 响应信息

verifyInfo

参数 类型 描述
flowId int 验证流水号
provider string 验证服务商

请求json

{
    "cardNo":"身份证号",
    "name":"姓名",
    "bankCardNo":"银行卡号",
    "mobile": "手机号",
    "verifyCode":"短信验证码"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "flowId":"验证流水号",
        "provider":"验证服务商"
    }
}

企业四要素验证

接口描述:

    使用企业四要素:企业法人姓名,企业法人身份证号,企业名称,统一社会信用代码做一致性校验。

服务名称:

     /v1/identity/verify/company4Element

请求方式:

    POST

请求参数

参数 类型 必须 描述
legalPersonName string true 企业法人姓名
legalPersonIdCard string true 法人身份证号码
companyName string true 企业名称
registerNo string true 统一社会信用代码
companyId string false 待认证的企业ID
uniqueId string false 业务系统方关联的企业ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data verifyInfo 验证结果
message string 响应信息

verifyInfo

参数 类型 描述
flowId string 验证流水号
provider string 验证服务商提供者

请求json

{
    "legalPersonName":"企业法人姓名",
    "legalPersonIdCard":"法人身份证号码",
    "companyName":"企业名称",
    "registerNo": "统一社会信用代码",
    "companyId":"认证企业ID",
    "uniqueId":"业务系统关联的唯一企业ID"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
       "flowId":"认证流水ID",
       "provider":"验证服务提供商"
    }
}

企业三要素验证

接口描述:

    使用企业三要素:企业法人姓名,企业名称,统一社会信用代码做一致性校验。

服务名称:

     /v1/identity/verify/company3Element

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyName string true 企业名称
registerNo string true 统一社会信用代码
legalPersonName string true 企业法人姓名
companyId string false 待认证的企业ID
uniqueId string false 业务系统方关联的企业ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data verifyInfo 验证结果
message string 响应信息

verifyInfo

参数 类型 描述
flowId string 验证流水号
provider string 验证服务商提供者

请求json

{
    "legalPersonName":"企业法人姓名",
    "companyName":"企业名称",
    "registerNo": "统一社会信用代码",
    "companyId":"认证企业ID",
    "uniqueId":"业务系统关联的唯一企业ID"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
       "flowId":"认证流水ID",
       "provider":"验证服务提供商"
    }
}

组织机构四要素验证

接口描述:

    使用组织机构四要素:法人姓名,法人身份证号,组织机构名称,同一社会信用代码做一致性校验。

服务名称:

     /v1/identity/verify/organize4Element

请求方式:

    POST

请求参数

参数 类型 必须 描述
legalPersonName string true 法人姓名
legalPersonIdCard string false 法人身份证号码
organizeName string true 组织机构名称
registerNo string true 统一社会信用代码
organizeId string false 待认证的组织机构ID
uniqueId string false 业务系统方关联的组织机构ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data verifyInfo 验证结果
message string 响应信息

verifyInfo

参数 类型 描述
flowId string 验证流水号
provider string 验证服务商提供者

请求json

{
    "legalPersonName":"企业法人姓名",
    "legalPersonIdCard":"法人身份证号码",
    "organizeName":"企业名称",
    "registerNo": "统一社会信用代码",
    "organizeId":"认证组织机构ID",
    "uniqueId":"业务系统关联的唯一组织机构ID"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
       "flowId":"认证流水ID",
       "provider":"验证服务提供商"
    }
}

发送短信验证码

接口描述:

    短信验证码

服务名称:

    /v1/sms/send/code

请求方式:

    POST

请求参数

参数 类型 必须 描述
phone string true 手机号
templateId string false 模板ID
codeLength int false 验证码长度,默认6位
signerId string false 签署人签署ID,用于此签署人签署合同意愿认证关联数据

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "phone":"手机号",
    "templateId":"短信模板ID",
    "codeLength":6
}

响应json

{
    "code":200,
    "message":"success",
    "data":{

    }
}

验证短信验证码

接口描述:

    校验手机短信验证码

服务名称:

    /v1/sms/verifyCode

请求方式:

    POST

请求参数

参数 类型 必须 描述
phone string true 手机号
code string true true

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "phone":"手机号",
    "code":"验证码"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{

    }
}

企业对公打款(独立模式)

接口描述:

    向企业银行账号随机打款,同时核验企业统一社会信用代码,公司名称,法人信息和对公账号

服务名称:

    /v1/identity/company/publicMoney/send

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID, companyId和uniqueId两者不能同时为空
uniqueId string false 业务系统关联的唯一企业ID
legalPersonName string true 企业法人姓名
registerNo string true 企业统一信用代码
companyName string true 企业组织机构名称
accountNo string true 对公账号
accountBank string true 账号开户行
accountProv string true 开户行所在省
accountCity string true 开户行所在市

响应参数

参数 类型 描述
code int 响应码,200:成功
data verifyInfo
message string 响应信息

verifyInfo

参数 类型 描述
vefifyId string 验证流水号
orderId string 验证订单号
orderDate string 验证订单日期

请求json

{
    "companyId":"组织机构ID",
    "uniqueId":"业务系统关联的唯一组织机构ID",
    "legalPersonName":"企业法人姓名",
    "registerNo":"组织机构代码",
    "companyName":"组织机构名称",
    "accountNo":"对公账号",
    "accountBank":"开户行",
    "accountProv":"开户行所在省",
    "accountCity":"开户行所在市"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "verifyId":"验证流水号",
        "orderId":"验证订单号",
        "orderDate":"验证订单日期"
    }
}

组织机构对公打款(独立模式)

接口描述:

    向企业内组织机构银行账号随机打款,同时核验企业统一社会信用代码,公司名称,法人信息和对公账号

服务名称:

    /v1/identity/organize/publicMoney/send

请求方式:

    POST

请求参数

参数 类型 必须 描述
organizeId string false 组织机构ID,organizeId和uniqueId两者不能同时为空
uniqueId string false 业务系统关联的唯一组织机构ID
legalPersonName string true 企业法人姓名
registerNo string true 组织机构代码
organizeName string true 组织机构名称
accountNo string true 对公账号
accountBank string true 账号开户行
accountProv string true 开户行所在省
accountCity string true 开户行所在市

响应参数

参数 类型 描述
code int 响应码,200:成功
data vefifyInfo
message string 响应信息

vefifyInfo

参数 类型 描述
verifyId string 认证流水ID
orderId string 验证订单号
orderDate string 验证订单时间

请求json

{
    "organizeId":"组织机构ID",
    "uniqueId":"业务系统关联的唯一组织机构ID",
    "legalPersonName":"企业法人姓名",
    "registerNo":"组织机构代码",
    "organizeName":"组织机构名称",
    "accountNo":"对公账号",
    "accountBank":"开户行",
    "accountProv":"开户行所在省",
    "accountCity":"开户行所在市"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "verifyId":"验证流水号",
        "orderId":"验证订单号",
        "orderDate":"验证订单日期"
    }
}

随机金额校验(独立模式)

接口描述:

    对公随机打款金额认证, 独立模式需要使用此接口验证金额

服务名称:

    /v1/identity/alone/publicMoney/verify

请求方式:

    POST

请求参数

参数 类型 必须 描述
verifyId string true 实名认证流程ID
amount string true 金额(单位:分;格式正整数;时效性:48h;如果第一次输入带了小数点,属于格式错误,允许再校验一次,如果是金额输错了,则第二次再输入正确金额,也不会成功)

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

publicMoneyInfo

参数 类型 描述
flowId string 认证流水ID,由企业四要素认证返回
orderDate string 认证时间

请求json

{
    "flowId":"实名认证流程ID",
    "amount":"金额"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{

    }
}

人脸验证

接口描述:

    个人用户,通过人脸进行认证。

服务名称:

    /v1/identity/face/verify

请求方式:

    POST

请求参数

参数 类型 必须 描述
idCard string true 待认证身份证号
userName string true 待认证用户名称
returnUrl string false 认证成功后跳转地址
accountId string flase 用户登录ID,accountId、uniqueId必须有一个有值
uniqueId string false 业务系统关联的唯一用户ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data faceVerifyResult
message string 响应信息

faceVerifyResult

参数 类型 描述
verifyId string 验证流水号
verifyUrl string 人脸验证url地址
provider string 人脸认证工具:alipay 表示用支付宝 ;tencent_h5 表示可以用微信、支付宝、手机浏览器等打开

请求json

{
    "idCard":"身份证号",
    "userName":"待认证用户名称",
    "returnUrl":"认证成功后跳转地址",
    "accountId":"登录账号ID",
    "uniqueId":"业务系统关联的唯一用户ID"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "verifyId":"认证ID,可用于查询",
        "verifyUrl":"认证地址",
        "provider":"人脸识别工具"
    }
}

人脸验证查询

接口描述:

    查询人脸验证结果

服务名称:

    /v1/identity/face/queryResult

请求方式:

    POST

请求参数

参数 类型 必须 描述
verifyId string true 验证流水号

响应参数

参数 类型 描述
code int 响应码,200:成功
data verifyResult
message string 响应信息

verifyResult

参数 类型 描述
verifyResult string 成功: 认证通过 失败:认证失败 认证中:未认证

请求json

{
    "verifyId":"验证流水号"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "verifyResult":"成功: 认证通过 失败:认证失败 认证中:未认证"
    }
}

证书管理

通用个人签名证书申请

接口描述:

    用于申请个人或企业证书

  1. 普通个人,同时仅允许一张同一算法的生效证书。

  2. 只有实名认证通过的用户才能申请证书。

服务名称:

    /v1/cert/user/apply

请求方式:

    POST

请求参数

参数 类型 必须 描述
accountId string false 账号ID,uniqueId两者其一必须有值,如果两者有值,以accountId为准
uniqueId string false 业务系统方关联的唯一用户标识
algorithm int true 证书算法:1:rsa, 2: sm2
valid int true 单位:月,最长不超过36个月

响应参数

参数 类型 描述
code int 响应码,200:成功
data userCertInfo
message string 响应信息

userCertInfo

参数 类型 描述
certNo string 证书序列号
dn string 证书dn信息
beginTime string 证书生效时间
afterTime string 证书失效时间

请求json

{
    "accountId":"用户ID",
    "uniqueId":"业务系统方关联的唯一用户标识",
    "algorithm":0,
    "valid": 12
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "certNo":"证书序列号",
        "dn":"证书dn项",
        "beginTime":"证书生效时间",
        "afterTime":"证书失效时间"
    }
}

通用个人签名证书续期

接口描述:

    用于个人签名证书的续期

  1. 续期仅能变更证书的有效期,如需变更证书算法,需重新申请一张新证书。

服务名称:

    /v1/cert/user/renewal

请求方式:

    POST

请求参数

参数 类型 必须 描述
accountId string false 账号ID,uniqueId两者其一必须有值,如果两者有值,以accountId为准
uniqueId string false 业务系统方关联的唯一用户标识
certNo string true 证书序列号
valid int true 单位:月。总有效期时长不能超过36个月

响应参数

参数 类型 描述
code int 响应码,200:成功
data userCertInfo
message string 响应信息

userCertInfo

参数 类型 描述
certNo string 证书序列号
dn string 证书dn信息
beginTime string 证书生效时间
afterTime string 证书失效时间

请求json

{
    "accountId":"账号ID",
    "uniqueId":"业务系统方关联的唯一用户标识",
    "certNo":"证书序列号",
    "valid":12
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "certNo":"证书序列号",
        "dn":"证书dn项",
        "beginTime":"证书生效时间",
        "afterTime":"证书失效时间"
    }
}

通用个人签名证书吊销

接口描述:

    用于吊销个人证书。

  1. 个人证书吊销后,如果此用户下无可用证书,将不能进行任何合同的签署。

服务名称:

    /v1/cert/user/revoke

请求方式:

    POST

请求参数

参数 类型 必须 描述
accountId string false 账号ID,uniqueId两者其一必须有值,如果两者有值,以accountId为准
uniqueId string false 业务系统方关联的唯一用户标识
certNo string false 证书序列号

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "accountId":"账号ID",
    "uniqueId":"业务系统方关联的唯一用户标识",
    "certNo":"证书序列号"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
    }
}

通用企业签名证书申请

接口描述:

    用于申请企业证书

  1. 企业或组织机构下同时仅允许一张同一算法的生效证书。

  2. 只有实名认证通过的企业才能申请证书。

服务名称:

    /v1/cert/company/apply

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID,uniqueId两者其一必须有值,如果两者有值,以companyId为准
uniqueId string false 业务系统方关联的唯一企业标识
organizeId string false 组织机构,为空时申请企业证书
organizeUniqueId string false 业务系统方关联的唯一组织机构表示,为空时申请企业证书
algorithm int true 证书算法:1:rsa, 2: sm2
valid int true 单位:月,最长不超过36个月

响应参数

参数 类型 描述
code int 响应码,200:成功
data certInfo
message string 响应信息

certInfo

参数 类型 描述
certId string 证书ID
certNo string 证书序列号
dn string 证书dn信息
beginTime string 证书生效时间
afterTime string 证书失效时间

请求json

{
    "companyId":"企业ID",
    "uniqueId":"业务系统方关联的唯一用户标识",
    "organizeId":"",
    "organizeUniqueId":"",
    "algorithm":0,
    "valid": 12
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "certId":"证书ID",
        "certNo":"证书序列号",
        "dn":"证书dn项",
        "beginTime":"证书生效时间",
        "afterTime":"证书失效时间"
    }
}

通用企业签名证书续期

接口描述:

    用于企业签名证书的续期

  1. 续期仅能变更证书的有效期,如需变更证书算法,需重新申请一张新证书。

服务名称:

    /v1/cert/company/renewal

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID,uniqueId两者其一必须有值,如果两者有值,以companyId为准
uniqueId string false 业务系统方关联的唯一用户标识
organizeId string false 组织机构,为空时申请企业证书
organizeUniqueId string false 业务系统方关联的唯一组织机构表示,为空时申请企业证书
certNo string true 证书序列号
valid int true 单位:月。总有效期时长不能超过36个月

响应参数

参数 类型 描述
code int 响应码,200:成功
data certInfo
message string 响应信息

certInfo

参数 类型 描述
certId string 证书ID
certNo string 证书序列号
dn string 证书dn信息
beginTime string 证书生效时间
afterTime string 证书失效时间

请求json

{
    "companyId":"企业ID",
    "uniqueId":"业务系统方关联的唯一企业标识",
    "organizeId":"",
    "organizeUniqueId":"",
    "certNo":"证书序列号",
    "valid":12
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "certId":"证书ID",
        "certNo":"证书序列号",
        "dn":"证书dn项",
        "beginTime":"证书生效时间",
        "afterTime":"证书失效时间"
    }
}

通用企业签名证书吊销

接口描述:

    用于吊销企业证书。

  1. 企业证书吊销后,如果此企业下无可用证书,将不能进行任何合同的签署。

服务名称:

    /v1/cert/company/revoke

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID,uniqueId两者其一必须有值,如果两者有值,以companyId为准
uniqueId string false 业务系统方关联的唯一企业标识
organizeId string false 组织机构,为空时申请企业证书
organizeUniqueId string false 业务系统方关联的唯一组织机构表示,为空时申请企业证书
certNo string false 证书序列号

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "companyId":"企业ID",
    "uniqueId":"业务系统方关联的唯一企业标识",
    "organizeId":"",
    "organizeUniqueId":"",
    "certNo":"证书序列号"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
    }
}

企业组织机构签名证书申请

接口描述:

    用于申请企业证书,默认关联在开发者账户下

  1. 企业或组织机构下同时仅允许一张同一算法的生效证书。

  2. 只有实名认证通过的企业才能申请证书。

服务名称:

    /v1/cert/apply

请求方式:

    POST

请求参数

参数 类型 必须 描述
organizeId string false 组织机构,不填写默认绑定在此开发者账户所属的企业下
uniqueId string false 业务系统方关联的唯一组织机构表示,不填默认绑定在此开发者账号所属企业下
accountId string false 操作者账号
accountUniqueId string false 业务系统关联的唯一用户ID
algorithm int true 证书算法:1:rsa, 2: sm2
valid int true 单位:月,最长不超过36个月

响应参数

参数 类型 描述
code int 响应码,200:成功
data userCertInfo
message string 响应信息

userCertInfo

参数 类型 描述
certId string 证书ID
certNo string 证书序列号
dn string 证书dn信息
beginTime string 证书生效时间
afterTime string 证书失效时间

请求json

{
    "organizeId":"组织机构ID",
    "uniqueId":"业务系统方关联的唯一用户标识",
    "accountId":"操作者账号",
    "accountUniqueId":"业务系统关联的唯一用户ID",
    "algorithm":0,
    "valid": 12
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "certId":"证书ID",
        "certNo":"证书序列号",
        "dn":"证书dn项",
        "beginTime":"证书生效时间",
        "afterTime":"证书失效时间"
    }
}

企业组织机构签名证书续期

接口描述:

    用于企业或者组织机构内签名证书的续期,默认操作绑定开发者账号下证书。

  1. 续期仅能变更证书的有效期,如需变更证书算法,需重新申请一张新证书。

服务名称:

    /v1/cert/renewal

请求方式:

    POST

请求参数

参数 类型 必须 描述
organizeId string false 组织机构,不填写默认绑定在此开发者账户所属的企业下证书
uniqueId string false 业务系统方关联的唯一组织机构标识
account string false 操作者账号
accountId string false 操作者账号
accountUniqueId string false 业务系统关联的唯一用户ID
certNo string true 证书序列号
valid int true 单位:月。总有效期时长不能超过36个月

响应参数

参数 类型 描述
code int 响应码,200:成功
data userCertInfo
message string 响应信息

userCertInfo

参数 类型 描述
certId string 证书ID
certNo string 证书序列号
dn string 证书dn信息
beginTime string 证书生效时间
afterTime string 证书失效时间

请求json

{
    "organizeId":"企业组织机构ID",
    "uniqueId":"业务系统方关联的唯一企业标识",
    "accountId":"操作者账号",
    "accountUniqueId":"业务系统关联的唯一用户ID",
    "certNo":"证书序列号",
    "valid":12
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "certId":"证书ID",
        "certNo":"证书序列号",
        "dn":"证书dn项",
        "beginTime":"证书生效时间",
        "afterTime":"证书失效时间"
    }
}

企业组织机构签名证书吊销

接口描述:

    用于吊销企业证书,默认操作绑定开发者账号下证书。

  1. 企业证书吊销后,如果此企业下无可用证书,将不能进行任何合同的签署。

服务名称:

    /v1/cert/revoke

请求方式:

    POST

请求参数

参数 类型 必须 描述
organizeId string false 组织机构,不填写默认绑定在此开发者账户所属的企业下证书
uniqueId string false 业务系统方关联的唯一企业标识
accountId string false 操作者账号
accountUniqueId string false 业务系统关联的唯一用户ID
certNo string true 证书序列号

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "organizeId":"组织机构ID",
    "uniqueId":"业务系统关联的唯一组织机构标识",
    "accountId":"操作者账号",
    "accountUniqueId":"业务系统关联的唯一用户ID",
    "certNo":"证书序列号"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
    }
}

印章管理

企业印章制作-模板模式

接口描述:

   用于申请企业或企业下机构下印章 > 1. 如果设置organizeId 或 organizeUniqueId 制作对应机构下的电子印章,为空制作企业电子印章

服务名称:

    /v1/seal/template/company/create

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID,companyId和uniqueId两个参数不能同时为空
uniqueId string false 业务系统对接方关联的企业ID
organizeId string false 企业下属组织机构ID
organizeUniqueId string false 业务系统关联唯一组织机构ID
accountId string false 申请创建印章的账号ID,accountId和accountUniqueId两个参数不能同时为空
accountUniqueId string false 业务系统方关联的唯一账号ID
sealInfoList List true 印章申请集合,每次申请不能超过5个

sealInfo

参数 类型 必须 描述
sealName string true 印章名称
sealNo string false 业务系统方绑定的印章编号唯一标识
sealStruct string false sel:pdf签章结构体,v4:ofd签章结构体,默认为sel
sealTemp int true 1:圆形, 2:椭圆,3:方形(竖右左),4:方形(竖左右),5:方形(横右左),6:方形(横左右)
sealType int true 印章类型:1.公章,2. 合同专用章,3.财务章,4:法人章,5:发票专用章
outlineBorder int false 单位0.01mm, 默认1mm,无边框设置为0
frontColor int false 前景色,可控制字体颜色: 默认-1红色,0黑色
sealWidth int true 印章宽度,单位0.01mm
sealHeight int true 印章高度,单位0.01
imageType int false 预览图片类型:1:gif, 2:png, 3:jpeg, 默认1
mainFont mainFontInfo true 主体文字信息
viceFont viceFontInfo false 副文字
bandRing bandRingInfo false 下环值
sealHandle sealHandleInfo false 印章授权列表

mainFontInfo

参数 类型 必须 描述
fontText string true 印章文字,个人章一般为人名
fontSize int false 圆形,椭圆章,上弦文字信息,方形章是章内显示的所有文字,单位0.01mm 默认值700
fontFlag int false 0:标准,1:粗体,2:斜体,3:粗斜体 默认值0
fontFamily string false 默认 宋体
marginSize int false 距离圆形变的边距,
textAngle int false 圆形椭圆章,外环文字所占的弧度(默认180度)
fontWidthzoom int false 字体缩放,默认设置缩放到60

viceFontInfo

参数 类型 必须 描述
fontText string true 印章文字,个人章一般为人名
fontSize int false 圆形,椭圆章,上弦文字信息,方形章是章内显示的所有文字,单位0.01mm 默认值700
fontFlag int false 0:标准,1:粗体,2:斜体,3:粗斜体 默认值0
marginSize int false 距离中心的边距 默认值0
fontWidthzoom int false 字体缩放,默认设置缩放到60

bandRingInfo

参数 类型 必须 描述
fontText string true 下环文字
fontSize int false 单位0.01mm 默认值260
fontFlag int false 0:标准,1:粗体,2:斜体,3:粗斜体 默认值0
fontFamily string false 默认 宋体
marginSize int false 距离圆形变的边距,默认30
textAngle int false 圆形椭圆章,外环文字所占的弧度(默认100度)
fontWidthzoom int false 字体缩放,默认设置缩放到60

sealHandleInfo

参数 类型 必须 描述
accountId string false 账号ID
uniqueId string false 业务系统方关联的唯一用户标识
isDefault boolean false 是否为此账号下默认印章,默认值false

响应参数

参数 类型 描述
code int 响应码,200:成功
data List
message string 响应信息

sealResult

参数 类型 必须 描述
sealId string true 印章ID
sealNo string false 业务系统方绑定的印章唯一标识
sealName string true 印章名称
sealImageBase64 string true 印章预览图片base64

请求json

{
    "companyId": "企业用户账号ID",
    "uniqueId": "业务系统方关联的唯一企业标识",
    "organizeId":"企业下属组织机构ID",
    "organizeUniqueId":"业务系统关联唯一组织机构ID",    
    "sealInfoList": [{
            "sealName": "num0001",
            "sealNo":"业务系统方绑定的唯一印章编号",
            "sealStruct": "sel",
            "sealTemp": 3,
            "sealWidth": 4200,
            "sealHeight": 4200,
            "frontColor":0,
            "outlineBorder":0,
            "imageType": "gif",
            "mainFont": {
                "fontText": "张三",
                "fontSize": 700,
                "fontFlag": 0,
                "fontFamily": "宋体",
                "fontWidthzoom": 30,
                "marginSize": 10
            },
            "viceFont": {
                "fontText": "合同专用章",
                "fontSize": 700,
                "fontFlag": 0,
                "fontWidthzoom": 30,
                "marginSize": 500
            },
            "sealHandle": {
                "accountId":"账号ID",
                "uniqueId":"业务系统方关联的用户唯一标识",
                "isDefault":false
            }
        }
    ],
    "accountId": "操作账号ID",
    "accountUniqueId": "业务对接方关联的唯一用户标识"
}

响应json

{
    "code":200,
    "message":"success",
    "data":[{
        "sealId":"印章ID",
        "sealName":"印章名称",
        "sealNo":"业务系统绑定的唯一印章编号",
        "sealImageBase64":"印章预览图片"
    }]
}

企业印章修改-模板模式

接口描述:

    用于修改企业或企业下属机构的印章

服务名称:

    /v1/seal/template/company/update

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID
uniqueId string false 业务系统对接方关联的企业ID
organizeId string false 企业下属组织机构ID
organizeUniqueId string false 业务系统关联唯一组织机构ID
accountId string false 修改印章的账号ID, accountId和uniqueId两其一必须有值,如果两者都有值,以accountId为准
accountUniqueId string false 业务系统方关联的唯一账号ID
sealInfoList List 印章申请集合,每次申请不能超过5个

sealInfo

参数 类型 必须 描述
sealId string false 印章ID,sealId和sealNo两者必有其一有值,如果两者都有值,则以sealId为主,并更新sealNo
sealName string true 印章名称
sealNo string false 业务系统方绑定的印章编号唯一标识
sealType int true 印章类型:1.公章,2. 合同专用章,3.财务章,4:法人章,5:发票专用章
sealStruct string false sel:pdf签章结构体,v4:ofd签章结构体,默认为sel
sealTemp int true 1:圆形,2:椭圆,3:方形(竖右左),4:方形(竖左右),5:方形(横右左),6:方形(横左右)
outlineBorder int false 单位0.01mm, 默认1mm,无边框设置为0
frontColor int false 前景色,可控制字体颜色: 默认-1红色,0黑色
sealWidth int true 印章宽度,单位0.01mm
sealHeight int true 印章高度,单位0.01
imageType int false 预览图片类型:1:gif, 2:png, 3:jpeg, 默认1
mainFont mainFontInfo true 主体文字信息
viceFont viceFontInfo false 副文字
bandFont bandFontInfo false 下环文字
sealHandle sealHandleInfo false 印章授权列表

mainFontInfo

参数 类型 必须 描述
fontText string true 印章文字,个人章一般为人名
fontSize int false 圆形,椭圆章,上弦文字信息,方形章是章内显示的所有文字,单位0.01mm 默认值700
fontFlag int false 0:标准,1:粗体,2:斜体,3:粗斜体 默认值0
fontFamily string false 默认 宋体
textAngle int fasle 圆形椭圆章,外环文字所占的弧度(默认180度)
marginSize int false 距离圆形变的边距,
fontWidthzoom int false 字体缩放,默认设置缩放到60

viceFontInfo

参数 类型 必须 描述
fontText string true 印章文字,个人章一般为人名
fontSize int false 圆形,椭圆章,上弦文字信息,方形章是章内显示的所有文字,单位0.01mm 默认值700
fontFlag int false 0:标准,1:粗体,2:斜体,3:粗斜体 默认值0
marginSize int false 距离中心的边距 默认值0
fontWidthzoom int false 字体缩放,默认设置缩放到60

bandFontInfo

参数 类型 必须 描述
fontText string true 印章文字,个人章一般为人名
fontSize int false 单位0.01mm 默认值260
fontFlag int false 0:标准,1:粗体,2:斜体,3:粗斜体 默认值0
marginSize int false 距离中心的边距 默认值30
textAngle int false 圆形椭圆章,外环文字所占的弧度(默认100度)
fontWidthzoom int false 字体缩放,默认设置缩放到60

sealHandleInfo

参数 类型 必须 描述
accountId string false 账号ID
uniqueId string false 业务系统方关联的唯一用户标识
isDefault boolean false 是否为此账号下默认印章,默认值false

响应参数

参数 类型 描述
code int 响应码,200:成功
data List
message string 响应信息

sealResult

参数 类型 必须 描述
sealId string true 印章ID
sealNo string false 业务系统方绑定的印章唯一标识
sealName string true 印章名称
sealImageBase64 string true 印章预览图片base64

请求json

{
    "companyId": "企业用户账号ID",
    "uniqueId": "业务系统方关联的唯一企业标识",
    "organizeId":"企业下属组织机构ID",
    "organizeUniqueId":"业务系统关联唯一组织机构ID",    
    "sealInfoList": [{
            "sealId":"印章ID",
            "sealName": "num0001",
            "sealNo":"业务系统方绑定的唯一印章编号",
            "sealStruct": "sel",
            "sealTemp": 3,
            "sealWidth": 4200,
            "sealHeight": 4200,
            "frontColor":0,
            "outlineBorder":0,
            "imageType": "gif",
            "mainFont": {
                "fontText": "张三",
                "fontSize": 700,
                "fontFlag": 0,
                "fontFamily": "宋体",
                "fontWidthzoom": 30,
                "marginSize": 10
            },
            "viceFont": {
                "fontText": "合同专用章",
                "fontSize": 700,
                "fontFlag": 0,
                "fontWidthzoom": 30,
                "marginSize": 500
            },
            "sealHandle": {
                "accountId":"账号ID",
                "uniqueId":"业务系统方关联的用户唯一标识",
                "isDefault":false
            }
        }
    ],
    "accountId": "操作账号ID",
    "accountUniqueId": "业务对接方关联的唯一用户标识"
}

响应json

{
    "code":200,
    "message":"success",
    "data":[{
        "sealId":"印章ID",
        "sealName":"印章名称",
        "sealNo":"业务系统绑定的唯一印章编号",
        "sealImageBase64":"印章预览图片"
    }]
}

企业印章删除

接口描述:

    用于删除企业印章

服务名称:

    /v1/seal/company/delete

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID, companyId和uniqueId两者必有一个值非空,如果两个字段都有值,则以companyId为准
uniqueId string false 业务系统方绑定的唯一企业标识
sealId string false 印章Id,sealId和sealNo两者必须有一个值非空,如果两个字段都有值,则以sealId为准
sealNo string false 业务系统方绑定的唯一印章标识

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "companyId": "企业用户账号ID",
    "uniqueId": "业务系统方关联的唯一企业标识",
    "accountId": "操作账号ID",
    "accountUniqueId": "业务对接方关联的唯一用户标识",
    "sealId":"印章id",
    "sealNo":"印章编号"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
    }
}

企业印章制作-图片模式

接口描述:

    通过印章图片,制作企业印章

服务名称:

    /v1/seal/image/company/create

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID,companyId和uniqueId两者必有一个值非空,如果两个字段都有值,则以companyId为准
uniqueId string false 业务系统方绑定的唯一企业标识
organizeId string false 企业下属组织机构ID
organizeUniqueId string false 业务系统关联唯一组织机构ID
width int false 印章宽度:单位0.01mm
height int false 印章高度:单位0.01mm
imageData string true 印章图片的base64
sealName string true 印章名称
sealNo string false 业务系统方关联的唯一印章编号
sealType string true 印章类型:1.公章,2. 合同专用章,3.财务章,4:法人章,5:发票专用章
sealStruct string false sel:pdf签章格式,v4:ofd签章格式,默认为sel
sealHandle sealHandleInfo false 印章授权人

sealHandleInfo

参数 类型 必须 描述
accountId string false 账号ID
uniqueId string false 业务系统方关联的唯一用户标识
isDefault boolean false 是否为此账号下默认印章,默认值false

响应参数

参数 类型 描述
code int 响应码,200:成功
data imageSealResult
message string 响应信息

imageSealResult

参数 类型 必须 描述
sealId string true 印章ID
sealName string true 印章名称
sealNo string false 业务系统方绑定的印章唯一标识

请求json

{
    "companyId": "企业用户账号ID",
    "uniqueId": "业务系统方关联的唯一企业标识",
    "organizeId":"企业下属组织机构ID",
    "organizeUniqueId":"业务系统关联唯一组织机构ID", 
    "accountId": "操作账号ID",
    "accountUniqueId": "业务对接方关联的唯一用户标识",
    "width":2100,
    "height":2100,
    "imageData":"印章图片base64数据",
    "sealName":"印章名称",
    "sealNo":"印章编号",
    "sealType":1,
    "sealStruct":"印章结构类型,默认sel",
    "sealHandle":{
        "accountId":"账号ID",
        "uniqueId":"业务对接方关联的唯一用户标识",
        "isDefault":false
    }
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
    }
}

企业印章修改-图片模式

接口描述:

    用于修改通过图片制作的企业印章

服务名称:

    /v1/seal/image/company/update

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID,companyId和uniqueId两者必有一个值非空,如果两个字段都有值,则以companyId为准
uniqueId string false 业务系统方绑定的唯一企业标识
organizeId string false 企业下属组织机构ID
organizeUniqueId string false 业务系统关联唯一组织机构ID
accountId string false 操作账号ID
accountUniqueId string false 业务对接方关联的唯一账号ID
sealId string false 印章ID, sealId和sealNo两者其一必须有值,如果两者都有值,则以sealId为准并更新sealNo
sealNo string false 印章编号
sealType int false 印章类型:1.公章,2. 合同专用章,3.财务章,4:法人章,5:发票专用章
width int false 印章宽度:单位0.01mm
height int false 印章高度:单位0.01mm
imageData string false 印章图片的base64
sealName string false 印章名称
sealNo string false 业务系统方关联的唯一印章编号
sealStruct string false sel:pdf签章格式,v4:ofd签章格式,默认为sel
sealHandle sealHandleInfo false 印章授权人

sealHandleInfo

参数 类型 必须 描述
accountId string false 账号ID
uniqueId string false 业务系统方关联的唯一用户标识
isDefault boolean false 是否为此账号下默认印章,默认值false

响应参数

参数 类型 描述
code int 响应码,200:成功
data imageSealResult
message string 响应信息

imageSealResult

参数 类型 必须 描述
sealId string true 印章ID
sealName string true 印章名称
sealNo string false 业务系统方绑定的印章唯一标识

请求json

{
    "companyId": "企业用户账号ID",
    "uniqueId": "业务系统方关联的唯一企业标识",
    "organizeId":"企业下属组织机构ID",
    "organizeUniqueId":"业务系统关联唯一组织机构ID", 
    "accountId": "操作账号ID",
    "accountUniqueId": "业务对接方关联的唯一用户标识",
    "width":2100,
    "height":2100,
    "imageData":"印章图片base64数据",
    "sealName":"印章名称",
    "sealNo":"印章编号",
    "sealStruct":"印章结构类型,默认sel",
    "sealHandle":{
        "accountId":"账号ID",
        "uniqueId":"业务对接方关联的唯一用户标识",
        "isDefault":false
    }
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
    }
}

企业印章授权

接口描述:

    授权操作人使用印章 > 1. 印章授权时需验证印章 和 授权用户是否在对应的企业和机构下面

服务名称:

    /v1/seal/company/auth

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID,companyId和uniqueId两者必有一个值非空,如果两个字段都有值,则以companyId为准
uniqueId string false 业务系统方绑定的唯一企业标识
organizeId string false 企业下属组织机构ID
organizeUniqueId string false 业务系统关联唯一组织机构ID
sealId string false 印章ID, sealId和sealNo两者必有一个值非空,如果两个字段都有值,则以sealId为准
sealNo string false 业务系统方关联的印章唯一标识
sealHandle List< sealHandleInfo > true 印章授权人列表

sealHandleInfo

参数 类型 必须 描述
accountId string false 账号ID
uniqueId string false 业务系统方关联的唯一用户标识
isDefault boolean false 是否为此账号下默认印章,默认值false

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "companyId": "企业用户账号ID",
    "uniqueId": "业务系统方关联的唯一企业标识",
    "organizeId":"企业下属组织机构ID",
    "organizeUniqueId":"业务系统关联唯一组织机构ID", 
    "sealId":"印章ID",
    "sealNo": "印章编号",
    "sealHandle":[
      {
        "accountId":"账号ID",
        "uniqueId":"业务系统方关联的唯一用户标识",
        "isDefault": false
      } 
    ] 
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
    }
}

企业印章取消授权

接口描述:

    取消授权操作人使用印章

服务名称:

    /v1/seal/company/offAuth

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID,companyId和uniqueId两者必有一个值非空,如果两个字段都有值,则以companyId为准
uniqueId string false 业务系统方绑定的唯一企业标识
organizeId string false 企业下属组织机构ID
organizeUniqueId string false 业务系统关联唯一组织机构ID
sealId string false 印章ID, sealId和sealNo两者必有一个值非空,如果两个字段都有值,则以sealId为准
sealNo string false 业务系统方关联的印章唯一标识
sealHandle List< sealHandleInfo> true 印章授权人列表

sealHandleInfo

参数 类型 必须 描述
accountId string false 账号ID
uniqueId string false 业务系统方关联的唯一用户标识

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "companyId": "企业用户账号ID",
    "uniqueId": "业务系统方关联的唯一企业标识",
    "organizeId":"企业下属组织机构ID",
    "organizeUniqueId":"业务系统关联唯一组织机构ID",
    "sealId":"印章ID",
    "sealNo": "印章编号",
    "sealHandle":[
      {
        "accountId":"账号ID",
        "uniqueId":"业务系统方关联的唯一用户标识"
      } 
    ] 
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
    }
}

获取用户授权印章列表

接口描述:

    用于查询账号下可使用的印章列表

服务名称:

    /v1/seal/company/queryAuthSeals

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID,companyId和company,uniqueId两者不能同时为空,两者都有值时,以companyId为准。
companyUniqueId string false 业务系统方关联的唯一企业标识
accountId string false 用户ID,accountId和accountUniqueId两者其一必须有值,如果两者都有值,以accountId为主
accountUniqueId string false 业务系统方关联的唯一企业标识

响应参数

参数 类型 描述
code int 响应码,200:成功
data List< sealInfo>
message string 响应信息

sealInfo

参数 类型 必须 描述
sealId string true 印章ID
seaName string true 印章名称
sealNo string false 印章编号
createTime string false 创建时间
isDefault boolean true 是否默认印章
sealType int true 印章类型:1.公章,2. 合同专用章,3.财务章,4:法人章,5:发票专用章
sealWay int true 印章创建方式:1:模板创建,2:图片,3:手写采集
sealData string true 印章预览图片base64

请求json

{
    "companyId":"企业ID",
    "companyUniqueId":"业务系统方关联的唯一企业标识",    
    "accountId":"账号ID",
    "accountUniqueId":"业务系统方关联的唯一用户标识"
}

响应json

{
    "code":200,
    "message":"success",
    "data":[
        {
            "sealId":"印章ID",
            "seaName":"印章名称",
            "sealNo":"印章编号",
            "createTime":"印章生成时间",
            "isDefault":false,
            "sealType":1,
            "sealWay":1,
            "sealData":"印章图片base64"
        }
    ]
}

获取企业印章列表

接口描述:

    用于查询该企业下可使用的印章列表

服务名称:

    /v1/seal/queryCompanySeals

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID,companyId和uniqueId两者其一必须有值,如果两者都有值,以companyId为主
uniqueId string false 业务系统方关联的唯一企业标识
organizeId string false 企业下属组织机构ID
organizeUniqueId string false 业务系统关联唯一组织机构ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data List< sealInfo >
message string 响应信息

sealInfo

参数 类型 必须 描述
sealId string true 印章ID
seaName string true 印章名称
sealNo string false 印章编号
createTime string false 创建时间
isDefault boolean true 是否默认印章
sealType int true 印章类型:1.公章,2. 合同专用章,3.财务章,4:法人章,5:发票专用章
sealWay int true 印章创建方式:1:模板创建,2:图片,3:手写采集
sealData string true 印章预览图片base64

请求json

{
    "companyId":"企业ID",
    "uniqueId":"业务系统方关联的唯一企业标识",
    "organizeId":"企业下属组织机构ID",
    "organizeUniqueId":"业务系统关联唯一组织机构ID",
}

响应json

{
    "code":200,
    "message":"success",
    "data":[
        {
            "sealId":"印章ID",
            "seaName":"印章名称",
            "sealNo":"印章编号",
            "createTime":"印章生成时间",
            "isDefault":false,
            "sealType":1,
            "sealWay":1,
            "sealData":"印章图片base64"
        }
    ]
}

修改个人默认印章

接口描述:

    修改人员的默认印章

服务名称:

    /v1/user/seal/default

请求方式:

    POST

请求参数

参数 类型 必须 描述
accountId string false 账号ID,accountId和uniqueId两者不能同时为空,两者都有值以accountId为准
uniqueId string false 业务系统关联的唯一用户ID
sealId string false 待配置的默认印章ID,sealId和sealNo两者不能同时为空,两者都有值则以sealId为准
sealNo string false 业务系统关联的唯一印章ID,两者不能同时为空

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "accountId":"账号ID",
    "uniqueId":"业务系统关联的唯一用户ID",
    "sealId":"印章ID",
    "sealNo":"业务系统关联的唯一印章ID"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{

    }
}

修改企业默认印章

接口描述:

    修改企业的默认印章

服务名称:

    /v1/company/seal/default

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 公司ID,companyId和uniqueId两者不能同时为空,两者都有值以companyId为准
uniqueId string false 业务系统关联的唯一企业ID
sealId string false 待配置的默认印章ID,sealId和sealNo两者不能同时为空,两者都有值则以sealId为准
sealNo string false 业务系统关联的唯一印章ID,两者不能同时为空

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "companyId":"公司ID",
    "uniqueId":"业务系统关联的唯一企业ID",
    "sealId":"印章ID",
    "sealNo":"业务系统关联的唯一印章ID"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{

    }
}

获取个人印章列表

接口描述:

    通过个人用户ID获取此用户下的印章列表

服务名称:

    /v1/user/seal/queryAuthSeals

请求方式:

    POST

请求参数

参数 类型 必须 描述
accountId string false 用户账号ID,accountId和uniqueId两者不能同时为空,如果两者都有值则以accountId为准
uniqueId string false 业务系统关联的唯一用户ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data List< sealInfo> 印章信息列表
message string 响应信息

sealInfo

参数 类型 描述
sealId string 印章id
sealNo string 业务系统关联的唯一印章编号
sealName string 印章名称
sealType int 1: 公章,2:财务章,3:合同章,4:发票章,5:法人章
sealImage string 印章预览图片
sealWay int 1:模板创建,2:图片, 3:手写采集
isDefault boolean 是否默认印章
createTime string 创建时间

请求json

{
    "accountId":"账号ID",
    "uniqueId":"业务系统关联的唯一用户ID"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "sealInfo":[
            {
            "sealId":"印章ID",
            "sealNo":"业务系统关联的唯一印章编号",
            "sealName":"印章名称",
            "sealType":"印章类型",
            "sealImage":"印章预览图片",
            "sealWay":"印章来源方式",
            "isDefault":true,
            "createTime":"创建时间"
            }
        ]
    }
}

获取印章详情

接口描述:

    根据印章id或者印章编号获取印章详情

服务名称:

    /v1/seal/details

请求方式:

    POST

请求参数

参数 类型 必须 描述
sealId string false 待配置的默认印章ID,sealId和sealNo两者不能同时为空,两者都有值则以sealId为准
sealNo string false 业务系统关联的唯一印章ID,两者不能同时为空

响应参数

参数 类型 描述
code int 响应码,200:成功
data sealInfo
message string 响应信息

sealInfo

参数 类型 描述
sealId string 印章id
sealNo string 业务系统关联的唯一印章编号
sealName string 印章名称
sealType int 1: 公章,2:财务章,3:合同章,4:发票章,5:法人章
sealImage string 印章预览图片
sealWay int 1:模板创建,2:图片, 3:手写采集
isDefault boolean 是否默认印章
createTime string 创建时间

请求json

{
    "sealId":"印章ID",
    "sealNo":"业务系统关联的唯一印章ID"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
            "sealInfo":{
                "sealId":"印章ID",
                "sealNo":"业务系统关联的唯一印章编号",
                "sealName":"印章名称",
                "sealType":"印章类型",
                "sealImage":"印章预览图片",
                "sealWay":"印章来源方式",
                "isDefault":true,
                "createTime":"创建时间"
            }
    }
}

获取印章盖章记录

接口描述:

根据印章id或者文件id、合同id获取盖章记录

服务名称:

/v1/seal/querySealRecord

请求方式:

POST

请求参数

参数 类型 必须 描述
sealId string false 印章id(存在其他参数时,首先使用印章id查询)
fileId string false 文件id(印章id不存在时,使用文件id查询)
docId string false 合同id

响应参数

参数 类型 描述
code int 响应码,200:成功
data sealRecord
message string 响应信息

sealRecord

参数 类型 描述
sealId string 印章id
fileId string 文件id
fileName string 文件名称
sealDate date 盖章时间

请求json

{
    "sealId":"印章ID"
}

响应json

{
    "code":200,
    "message":"success",
    "data":[
      {
        "sealId": "印章id",
        "fileName": "文件名称",
        "fileId": "文件id",
        "sealDate": "2023年11月07 16:36:31"
      }
    ]
}

合同管理

文件上传

接口描述:

    上传合同文件

服务名称:

    /v1/contract/upload

请求方式:

    POST

Content-Type:

multipart/form-data

请求参数

参数 类型 必须 描述
file formData true 上传的合同文件

响应参数

参数 类型 描述
code int 响应码,200:成功
data fileKey
message string 响应信息

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "fileKey":"文件在电子合同平台中的序列标识"
    }
}

合同验证-上传文件方式

接口描述:

    用于合同验证:验证结果包含签署人信息,签署时间,签署有效性,文档是否被篡改等信息

  1. 先调用文件上传接口,再通过上传接口返回的fileKey进行验证

服务名称:

    /v1/contract/verify/fileKey

请求方式:

    POST

请求参数

参数 类型 必须 描述
fileFormat string true 文件类型,支持"OFD","PDF"
fileKey string true 文件上传后返回的标识
filePwd string false 文件保护密码,如果设置了则需要传送

响应参数

参数 类型 描述
code int 响应码,200:成功
data List< verifyResult>
message string 响应信息

verifyResult

参数 类型 描述
cert certInfo 证书信息
signature signatureInfo 签名信息
seal sealInfo 印章信息

certInfo

参数 类型 描述
cn string 证书使用者名称
beforeDate string 证书生效时间
afterDate string 证书失效时间
sn string 证书序列号

signatureInfo

参数 类型 描述
modify boolean 文档是否被篡改
signDate string 签署时间
timestamperType string 时间戳方式:"locale:服务器时间","provider:第三方时间戳提供商"
validate boolean 验证结果

sealInfo

参数 类型 描述
sealName string 印章名称

请求json

{
    "fileFormat":"PDF",
    "fileKey":"文件标识",
    "filePwd":""
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "verifyResult":[
            {
                "cert":{
                    "cn":"使用者名称",
                    "beforeDate":"证书生效时间",
                    "afterDate":"证书失效时间",
                    "sn":"序列号",
                },
                "signature":{
                    "modify":false,
                    "signDate":"文档签署时间",
                    "timestamperType":"时间戳方式",
                    "validate":true
                },
                "seal":{
                    "sealName":"印章名称",
                }
            },
        ]
    }
}

合同浏览

接口描述:

    用于电子合同的浏览,有效时间30分钟

服务名称:

    /v1/contract/view

请求方式:

    POST

请求参数

参数 类型 必须 描述
fileKey string true 文件标识
filePwd string false 文件密码
mode string true "PC","Mobile"

响应参数

参数 类型 描述
code int 响应码,200:成功
data viewUrl 文档预览地址
message string 响应信息

请求json

{
    "fileKey":"文件标识",
    "filePwd":"文档保护密码",
    "mode":"终端类型"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "viewUrl":"文档预览地址"
    }
}

合同下载

接口描述:

    通过fileKey下载合同,下载链接30分钟内有效

服务名称:

    /v1/contract/download

请求方式:

    POST

请求参数

参数 类型 必须 描述
fileKey string true 文件标识
docId string false 签署流程创建返回的docId

响应参数

参数 类型 描述
code int 响应码,200:成功
data downloadUrl
message string 响应信息

请求json

{
    "fileKey":"文件标识",
    "docId":"docId"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "downloadUrl":"下载链接"
    }
}

合同取证(待完善)

接口描述:

    获取此合同的生命周期内的签署证明和司法鉴定报告

服务名称:

    /v1/contract/evidence

请求方式:

    POST

请求参数

参数 类型 必须 描述
organizeId string false organizeId和uniqueId两者必有一个值非空,如果两个字段都有值,则以organizeId为准
uniqueId string false organizeId和uniqueId两者必有一个值非空,如果两个字段都有值,则以organizeId为准

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{

}

响应json

{
    "code":200,
    "message":"success",
    "data":{
    }
}

合同状态查询

接口描述:

    用于电子合同的状态查询,已完成的合同提供下载地址有效时间30分钟

服务名称:

    /v1/contract/docState

请求方式:

    POST

请求参数

参数 类型 必须 描述
signFlowId string false 文档ID(signFlowId、bizId两者必有一个值非空)
bizId string false 业务系统方绑定的签署流程ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data map 结果集
message string 响应信息

data-map | docState | string | 文档状态 | | downloadUrl | List | 文档下载地址 |

请求json

{
    "signFlowId":"108ebcde21796b8a3230f7cc959de2ea",
    "bizId":""
}

响应json

{
    "code": 200,
    "message": "success",
    "data": {
        "docName": "可信签测试2023006151",
        "bizId": "2023006151",
        "downloadUrl": [
            "http://127.0.0.1:8080/trustedsign/common/download/UOBOTELWSW",
            "http://127.0.0.1:8080/trustedsign/common/download/QOMUNSGKUB"
        ],
        "docState": "已完成",
        "signFlowId": "108ebcde21796b8a3230f7cc959de2ea"
    }
}

模板管理

模板列表查询

接口描述:

    获取企业模板列表

服务名称:

    /v1/template/list

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID,companyId和uniqueId两者不能为空,如果两者都有值,则以companyId为准
uniqueId string false 业务系统关联的唯一企业编号

响应参数

参数 类型 描述
code int 响应码,200:成功
data List< templateInfo>
message string 响应信息

templateInfo

参数 类型 描述
name string 模板名称
templateId string 模板ID
templateNo string 业务系统关联的模板编号
description string 模板描述信息
createDate string 模板创建时间
status string 模板状态:"启用","停用"
fileKey string 模版文件标识
dataList List< dataFieldInfo > 模板数据项信息

dataFieldInfo

参数 类型 描述
dataName string 模板数据项名称
dataRemark string 模板数据项说明

请求json

{
    "companyId":"公司ID",
    "uniqueId":"业务系统关联的唯一企业编号"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
       "templateInfo":[
            {
                "name":"模板名称",
                "templateId":"模板ID",
                "templateNo":"业务系统关联的模板编号",
                "createDate":"模板创建时间",
                "templateNo":"业务系统关联的模板编号",
                "description":"模板描述信息",
                "status":"模板状态",
                "fileKey":"73fb055fe52f49c8ba2c5b4d553ff149",
                "dataList": [
                    {
                      "dataName":"模板数据项名称1",
                      "dataRemark":"模板数据项说明1"
                    },
                    {
                      "dataName":"模板数据项名称2",
                      "dataRemark":"模板数据项说明2"
                    }
                ]
            }
        ]
    }
}

模板信息查询

接口描述:

    获取企业模板信息

服务名称:

    /v1/template/info

请求方式:

    POST

请求参数

参数 类型 必须 描述
companyId string false 企业ID,companyId和uniqueId两者不能为空,如果两者都有值,则以companyId为准
uniqueId string false 业务系统关联的唯一企业编号
templateId string true 模版编号

响应参数

参数 类型 描述
code int 响应码,200:成功
data templateInfo
message string 响应信息

templateInfo

参数 类型 描述
name string 模板名称
templateId string 模板ID
templateNo string 业务系统关联的模板编号
description string 模板描述信息
createDate string 模板创建时间
status string 模板状态:"启用","停用"
fileKey string 模版文件标识
dataList List< dataFieldInfo > 模板数据项信息

dataFieldInfo

参数 类型 描述
dataType int 数据项类型(5:公章、6:个人签名、7:签署日期 ...)
dataName string 模板数据项名称
dataRemark string 模板数据项说明(标题)
dataLeft string 数据项距左边框的距离(百分比)
dataTop string 数据项距上边框的距离(百分比)
width string 数据项宽度(百分比)
height string 数据项高度(百分比)

请求json

{
    "companyId":"c382a4e58091223bd51c174ee6ef6df6",
    "templateId":"572a54562455486c96f3778fe6cfd4f3"
}

响应json

{
    "code": 200,
    "message": "success",
    "data": {
        "templateInfo": {
            "name": "模板444",
            "templateId": "572a54562455486c96f3778fe6cfd4f3",
            "description": "",
            "createDate": "2024-04-07 16:43:12",
            "status": "启用",
            "dataList": [
                {
                    "dataRemark": "文本框1",
                    "width": "25.220680958385877%",
                    "dataType": 1,
                    "dataName": "text1",
                    "dataLeft": "39.519359145527375%",
                    "dataTop": "3.588290840415486%",
                    "height": "2.6756784756134593%"
                }
            ],
            "fileKey": "73fb055fe52f49c8ba2c5b4d553ff149"
        }
    }
}

模板创建合同

接口描述:

    使用模板文件和元数据生成电子合同,此方法提供创建和更新两个功能

服务名称:

    /v1/template/contract/create

请求方式:

    POST

请求参数

参数 类型 必须 描述
templateId string false 模板ID, templateId和templateNo两者不能同时为空,两者都有值则以templateId为准
templateNo string false 业务系统关联模板编号
fileKey string false 模板合成文件ID,传此值更新fileKey对应的文件
templateData templateDataInfo false 模板数据要素

templateDataInfo

参数 类型 必须 描述
key-value object false key:value键值对值,可以包含数组,用于列表数据生成
listData List< dynamicInfo > false key:value键值对值,可以包含数组,用于列表数据生成

dynamicInfo

参数 类型 必须 描述
fields List< string> true 动态扩展行中对象数组,数组中自动顺序必须和模板中的一致
data List< key-value > true 动态扩展行中字段对象的值,key:value键值对

响应参数

参数 类型 描述
code int 响应码,200:成功
data fileInfo
message string 响应信息

fileInfo

参数 类型 描述
fileKey string 模板合成文件ID
previewUrl string 文件预览url地址

请求json

{
    "templateId":"模板ID",
    "templateNo":"业务系统关联的模板编号",
    "templateData":{
        "name":"张三",
        "age":"30",
        "listData":[{
          "fields":["orderNo","goodsName","money","field4"],  //动态扩展列名称,此值必须有值,字段顺序与模板中的顺序一致
          "data":[
            {
                "orderNo":"100000001",
                "goodsName":"ipad",
                "money":"1001",
            },
            {
                "orderNo":"100000002",
                "goodsName":"iPhone",
                "money":"1002",
            }
        ]}]
    }
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "fileKey":"87y6ts-gjkmwj",
        "previewUrl":"文件预览地址"
    }
}

签署管理

创建签署流程

接口描述:

    用于发起签署流程,指定发起人、签署顺序模式、证书、印章、签署顺序、意愿模式、签署文档等信息。流程创建后,支持接口和页面两种签署模式,通知客户模式可配置。一般通过接口签署方式,由业务系统通知待签署方信息,通过页面模式签署,由电子合同平台方进行通知。

  1. 流程支持组织机构内静默签署,企业签署必须先完成意愿认证后才可签署。

服务名称:

    /v1/signFlow/create

请求方式:

    POST

请求参数

参数 类型 必须 描述
bizId string false 唯一的业务ID,一个合同对应一个bizId
signFlowCode string false 签署合同编码
description string false 合同描述
expireTime string fasle 签署流程过期时间,不填则不限制期限
ordinal boolean false 是否顺序签署,默认为true
send boolean false 是否发起流程,发起后则不能调整流程
operAccountId string false 发起人accountId, accountId和accountUniqueId,两者不能同时为空,当两者都有值时,以accountId为准
operAccountUniqueId string false 业务系统方关联的唯一用户标识
operCompanyId string false 发起人所属企业ID,operCompanyId和operCompanyUniqueId两者都存在,以operCompanyId为准
operCompanyUniqueId string false 发起人所属企业,业务系统方关联的唯一企业标识
redirectUrl string false 使用电子合同页面签署后重定向的网页
completeCallUrl string false 电子合同页面签署比传,签署完成后通知业务系统回调地址.详细说明见签署回调接口说明
signDocs List< signDocInfo > true 签署文档信息
copySendReceivers List< copySendReceiver > false 抄送人列表
tags List< string > false 标签
signers List< signerInfo> true 签署人信息

signDocInfo

参数 类型 必须 描述
fileUniqueId string true 文件唯一标识,可以通过GUUID生成
docName string true 文档名称
uploadType int true 上传方式:1 接口上传的文件(fileKey不能为空);2 文件base64字符串(fileData不能为空);3 模板在线合成文件(templateInfo字段不能为空)
filePwd string false 文档密码,如果文档有密码保护则需要传递
fileOrder int false 文档显示需要,从小到大排序
fileKey string false 文档fileKey由合同上传接口返回,uploadType=1时不能为空
fileData string false PDF文件的Base64字符串,uploadType=2时不能为空
templateInfo templateObject false 可信签模板合成文件对象,uploadType=3时不能为空
setNode String false 不签署节点设置,以英文逗号拼接。例如:"2" 或 "2,3"

templateObject

参数 类型 必须 描述
templateId string false 模板ID, templateId和templateNo两者不能同时为空,两者都有值则以templateId为准
templateNo string false 业务系统关联模板编号
templateData templateDataInfo false 模板数据要素对应的值

templateDataInfo

参数 类型 必须 描述
key-value object false key:value键值对值,可以包含数组,用于列表数据生成

copySendReceiver

参数 类型 必须 描述
accountId string false 抄送人账号ID
uniqueId string false 业务系统方关联的唯一用户ID
accountType int true 抄送人账号类型:1:开发者账号绑定的企业内用户,2:外部用户

signerInfo

参数 类型 必须 描述
signOrder int false ordinal为true时,将根据此序号排序,依次签署
signerType int false 节点类型,1 签署节点 2 审核节点 ,默认 1 签署节点
authType string false 支持的意愿认证方式,可多选,多选通过“,”分割。1:短信,2:密码口令,3:人脸识别。
signIdentity string true 支持的签署类型:2:个人,4:企业,8:法定代表人,16:不限制。默认为16不限制,如果限制多种类型,使用","逗号分隔。例如限制企业和法定代表人则传:4,8
operatorType int false 操作类型: 1 所有人处理通过 0 一个人处理通过,默认:1
signUsers List< signUser > true 当前节点签署人信息
signDocDetails List< signDocDetail > true 文档签署详细信息

signUser

参数 类型 必须 描述
accountId string false 签署用户ID 或 uniqueId 或 licenseType三个参数必须有一个有值
uniqueId string false 业务系统方关联的唯一用户标识
licenseType int false 证件类型: 1. 身份证 2. 中国护照 3. 港澳居民来往内地通行证 4. 台胞证
licenseNumber string false 证件号码,当licenseType不为空,此字段必须有值
userName string false 用户真实姓名,当licenseType不为空,此字段必须有值
mobile string false 用户手机号,新创建用户时为可信签系统登录账号,默认密码为证件的后6位,当licenseType不为空,此字段必须有值
authOrganizeId string false 企业签署传企业ID,企业身份证签署时此字段、authOrganizeUniqueId和authOrganizeRegisterNo不能同时为空
authOrganizeUniqueId string false 业务系统企业唯一标识,企业签署时需传此值、authOrganizeId和authOrganizeRegisterNo不能同时为空
authOrganizeRegisterNo string false 企业签署传企业统一信用代码,企业签署时需传此值、authOrganizeUniqueId和authOrganizeId不能同时为空
signerUniqueId string true 业务系统关联的签署ID,供后续关联意愿认证
accountType string false 签署人账号类型:1:开发者账号绑定的企业内用户,2:外部用户

signDocDetail

参数 类型 必须 描述
fileUniqueId string true 签署文件唯一ID,与signDocs中fileUniqueId值相同
fileKey string true 文档fileKey由合同上传接口返回
sealActions List< sealAction > true 签署动作信息

sealAction

参数 类型 必须 描述
addSignTime boolean false 印章下方是否动态添加时间戳,默认false
sealId string false 印章ID, 可以不指定。页面签时,不指定显示此用户可用的印章列表,自动签署时,则使用默认印章。
dataType int false 数据类型, 5:公章、6:个人签名、7:签署日期。
signType int true 签署方式:1:用户拖拽印章坐标方式,2:关键字,3:左骑缝,4:右骑缝,5:多页盖章, 6:绝对坐标
findKey string false 当signType=2是必填
keyIndex int false 关键字索引,当存在多个关键字时,指定在第几个关键字处签章。-1:最后一个关键字
offsetX int false X轴偏移:整份文档的X轴按照50000份计算,以左上角为原点
offsetY int fasle Y轴偏移:整份文档的Y轴按照50000份计算,以左上角为原点
ridingSealMaxCut int false 骑缝章时,一个印章被切割的最大份数,默认20
ridingSealPageMode int false 骑缝章页模式:1:单页,2:双页
sealPage string false 签章页码:连续页码可用"-"指定范围,例如:1-5表示1,2,3,4,5页范围,非连续页可指定页码,使用“,”分割,例如:1,3,5
positionX int false X轴坐标:整份文档的X轴按照50000份计算,以左上角为原点
positionY int false Y轴坐标:整份文档的Y轴按照50000份计算,以左上角为原点

响应参数

参数 类型 描述
code int 响应码,200:成功
data signFlowResult
message string 响应信息

signFlowResult

参数 类型 描述
bizId string 合同业务ID,如果请求有传入,则回显
signFlowId string 签署流程ID
signInfo List< signInfoResult> 签署信息
signDocs List< signDocsResult> 签署文档信息

signInfoResult

参数 类型 描述
signerId string 签署人签署ID:同一份合同业务ID,同一个账号可创建多个signerInfo,用于实现每次签署前都需要意愿认证
signerUniqueId string 业务系统方关联的签署ID
accountId string 账号ID
uniqueId string 业务系统方关联的唯一用户标识
userName string 签署人名称
signUrl string 签署URL,如果开发者账号信息配置的为使用电子合同平台页面签署,则有值

actionInfo

参数 类型 描述
actionId string 签署动作ID
uniqueId string 业务系统关联的签署动作ID

signDocsInfoResult

参数 类型 描述
docId string 文档ID
fileKey string 文档标记,用于下载文档或者文档预览

请求json

{
    "bizId":"唯一的业务ID,一个合同对应一个bizId",
    "signFlowCode":"签署合同编码",
    "description":"合同描述",
    "expireTime":"2022-06-06 13:30:00",
    "send":true,
    "ordinal":true,
    "operAccountId":"创建者账号",
    "operAccountUniqueId":"业务系统方关联的创建者ID",
    "operCompanyId":"创建者所属企业ID",
    "operCompanyUniqueId":"业务系统方关联的创建企业ID",
    "redirectUrl":"签署完成后重定向地址",
    "signDocs":[
        {
            "fileUniqueId":"文件唯一ID",
            "uploadType": 1,  //上传方式:1 接口上传的文件;2 文件base64字符串;3 模板在线合成文件            
            "docName":"文档展示名称",
            "fileOrder":1,
            "filePwd":"",
            "fileKey":""            
        },
        {
            "fileUniqueId":"文件唯一ID",
            "uploadType": 2,  //上传方式:1 接口上传的文件;2 文件base64字符串;3 模板在线合成文件            
            "docName":"文档展示名称",
            "fileOrder":2,
            "filePwd":"",
            "fileData":"文件的Base64字符串"
        },
        {
            "fileUniqueId":"文件唯一ID",
            "uploadType": 3,  //上传方式:1 接口上传的文件;2 文件base64字符串;3 模板在线合成文件            
            "docName":"文档展示名称",
            "fileOrder":3,
            "filePwd":"",
            "templateInfo":{
              "templateId":"模板ID",
              "templateNo":"业务系统关联的模板编号",
              "templateData":{
                  "name":"张三",
                  "age":"30",
                  "listData":[
                      {
                          "orderNo":"100000001",
                          "goodsName":"ipad",
                          "money":"1001",
                      },
                      {
                          "orderNo":"100000002",
                          "goodsName":"iPhone",
                          "money":"1002",
                      },
                  ]
              }
            }
        }
    ],
    "copySendReceivers":[
        {
            "accountId":"抄送人账号ID",
            "uniqueId":"业务系统方关联的唯一用户ID",
            "accountType":1,
        }
    ],
    "signers":[
        {
            "accountId":"user001",
            "uniqueId":"user00001",
            "authOrganizeId":"企业签署时需传入此值 或 authOrganizeUniqueId",
            "authOrganizeUniqueId":"企业签署时需传入此值 或authOrganizeId ",
            "signerUniqueId":"业务系统关联的签署ID",
            "accountType":1,
            "autoSign":false,
            "signOrder":1,
            "signerType":1,     //节点类型,1 签署节点  2 审核节点 ,默认 1 签署节点
            "authType":"1,2,3",
            "signIdentity":"4,8",
            "signDocDetails":[{
                "docFileKey":"",
                "sealActions":[                    
                    {                        
                        "addSignTime":false,
                        "sealId":"axo01",
                        "dataType":7,  //5 公章,6 签名  7 签署日期
                        "signType":2,    //2 通过关键字盖章
                        "findKey":"签章处",
                        "keyIndex":-1,
                        "offsetX":1000,
                        "offsetY":1000
                    },
                    {                        
                        "addSignTime":false,
                        "sealId":"axo01",
                        "signType":3,                       
                        "positionX":25000,
                        "positionY":25000,
                        "ridingSealMaxCut":20,
                        "ridingSealPageMode":1,
                        "sealPage":"5-20"
                    }
                ]
            }],
        },
        {
            "licenseType ":1,
            "licenseNumber ":"410928197605231513",
            "userName":"张三",
            "mobile":"15699183888",
            "authOrganizeId":"企业ID,企业签署时需传入此值、authOrganizeUniqueId 和 authOrganizeRegisterNo 不能同时为空",
            "authOrganizeUniqueId":"业务系统企业唯一标识,企业签署时需传入此值、authOrganizeId 和 authOrganizeRegisterNo 不能同时为空",
            "authOrganizeRegisterNo":"企业统一信用代码,企业签署时需传入此值、authOrganizeId 和 authOrganizeUniqueId 不能同时为空",
            "signerUniqueId":"业务系统关联的签署ID",
            "accountType":1,
            "autoSign":false,
            "signOrder":1,
            "signerType":1,     //节点类型,1 签署节点  2 审核节点 ,默认 1 签署节点
            "authType":"1,2,3",
            "signIdentity":"4,8",
            "signDocDetails":[{
                "fileUniqueId":"签署文件唯一ID,与signDocs中fileUniqueId值相同",
                "sealActions":[
                    {                        
                        "addSignTime":false,
                        "sealId":"axo01",
                        "signType":2,                       
                        "positionX":25000,
                        "positionY":25000,
                        "ridingSealMaxCut":20,
                        "ridingSealPageMode":1,
                        "sealPage":"5-20"
                    }
                ]
            }],
        }
    ]
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "bizId":"业务系统关联的业务ID,如果请求有传入,则回显",
        "signFlowId":"签署流程ID",
        "signInfo":[{
            "signerId":"签署ID",
            "signerUniqueId":"业务系统关联的签署ID",
            "accountId":"账号ID",
            "uniqueId":"业务系统方关联的唯一用户标识",
            "accountName":"签署人名称",
            "signUrl":"签署页面url",            
        },
        {
            "signerId":"签署ID",
            "signerUniqueId":"业务系统关联的签署ID",
            "accountId":"账号ID",
            "uniqueId":"业务系统方关联的唯一用户标识",
            "accountName":"签署人名称",
            "signUrl":"签署页面url",            
        }],
        "signDocs":[{
            "docId":"文档ID",
            "fileKey":"文件标识,用于文档下载或者文档预览"
        },
        {
            "docId":"文档ID",
            "fileKey":"文件标识,用于文档下载或者文档预览"
        }],
    }
}

更新签署过期时间

接口描述:

    更新签署流程中的签署过期时间。

服务名称:

    /v1/signFlow/update/expireTime

请求方式:

    POST

请求参数

参数 类型 必须 描述
signFlowId string false 签署流程ID,signFlowId 和 bizId两个参数至少一个有值
bizId string false 业务系统方绑定的签署流程ID
expireTime string fasle 签署流程过期时间,不填则不限制期限
operAccountId string false 操作人accountId, operAccountId和operAccountUniqueId,两者不能同时为空,当两者都有值时,以operAccountId为准
operAccountUniqueId string false 业务系统方关联的唯一用户标识

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "signFlowId":"合同流程ID",
    "bizId":"业务系统方绑定的签署流程ID",
    "expireTime":"流程过期时间",
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
    }
}

发起签署流程

接口描述:

   发起签署流程,如果创建的时候已指定发起则不需再次调用,发起后,将不能调整签署流程.

  1. 如果开发者账号配置的为签署页面使用电子合同,则发起流程后,默认由电子合同发送签署信息。

服务名称:

    /v1/signFlow/publish

请求方式:

    POST

请求参数

参数 类型 必须 描述
signFlowId string false 签署流程ID,signFlowId 和 bizId两个参数至少一个有值
bizId string false 业务系统方绑定的签署流程ID
operAccountId string false 操作人accountId, operAccountId和operAccountUniqueId,两者不能同时为空,当两者都有值时,以operAccountId为准
operAccountUniqueId string false 业务系统方关联的唯一用户标识

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "signFlowId":"合同流程ID",
    "bizId":"业务系统方绑定的流程ID",
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
    }
}

撤回签署流程

接口描述:

    撤回电子合同签署流程。

服务名称:

    /v1/signFlow/retract

请求方式:

    POST

请求参数

参数 类型 必须 描述
signFlowId string false 签署流程ID,signFlowId 和 bizId两个参数至少一个有值
bizId string false 业务系统方绑定的签署流程ID
reason string true 流程撤回原因
operAccountId string false 操作人accountId, operAccountId和operAccountUniqueId,两者不能同时为空,当两者都有值时,以operAccountId为准
operAccountUniqueId string false 业务系统方关联的唯一用户标识

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "signFowId":"签署流程ID",
    "bizId":"业务系统方关联的签署流程ID",
    "reason":"撤回原因"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
    }
}

更新签署文件

接口描述:

    电子合同签署流程在未发起之前 或 流程被撤回后可以对签署文件进行更新

服务名称:

    /v1/signFlow/updateFile

请求方式:

    POST

请求参数

参数 类型 必须 描述
signFlowId string false 签署流程ID,signFlowId 和 bizId两个参数至少一个有值
bizId string false 业务系统方绑定的签署流程ID
signDocs List< signDocInfo > true 签署文档信息
operAccountId string false 操作人accountId, operAccountId和operAccountUniqueId,两者不能同时为空,当两者都有值时,以operAccountId为准
operAccountUniqueId string false 业务系统方关联的唯一用户标识

signDocInfo

参数 类型 必须 描述
docId string true 文档ID,流程创建成功后返回docId值
docName string true 文档名称
uploadType int true 上传方式:1 接口上传的文件(fileKey不能为空);2 文件base64字符串(fileData不能为空);3 模板在线合成文件(templateId、templateData字段不能为空)
filePwd string false 文档密码,如果文档有密码保护则需要传递
fileOrder int false 文档显示需要,从小到大排序
fileKey string false 文档fileKey由合同上传接口返回,uploadType=1时不能为空
fileData string false 文件的Base64字符串,uploadType=2时不能为空
templateId string false 可信签模板ID,uploadType=3时不能为空
templateData templateDataINfo false 模板中数据项值,uploadType=3时不能为空

响应参数

参数 类型 描述
code int 响应码,200:成功
data object
message string 响应信息

请求json

{
    "signFlowId":"签署流程ID",
    "bizId":"唯一的业务ID,一个合同对应一个bizId",    
    "signDocs":[
        {
            "docId":"文档ID,流程创建成功后返回docId值",            
            "uploadType": 1,  //上传方式:1 接口上传的文件;2 文件base64字符串;3 模板在线合成文件            
            "docName":"文档展示名称",
            "fileOrder":1,
            "filePwd":"",
            "fileKey":""            
        },
        {
            "docId":"文档ID,流程创建成功后返回docId值", 
            "uploadType": 2,  //上传方式:1 接口上传的文件;2 文件base64字符串;3 模板在线合成文件            
            "docName":"文档展示名称",
            "fileOrder":2,
            "filePwd":"",
            "fileData":"文件的Base64字符串"
        },
        {
            "docId":"文档ID,流程创建成功后返回docId值", 
            "uploadType": 3,  //上传方式:1 接口上传的文件;2 文件base64字符串;3 模板在线合成文件            
            "docName":"文档展示名称",
            "fileOrder":3,
            "filePwd":"",
            "templateInfo":{
              "templateId":"模板ID",
              "templateNo":"业务系统关联的模板编号",
              "templateData":{
                  "name":"张三",
                  "age":"30",
                  "listData":[
                      {
                          "orderNo":"100000001",
                          "goodsName":"ipad",
                          "money":"1001",
                      },
                      {
                          "orderNo":"100000002",
                          "goodsName":"iPhone",
                          "money":"1002",
                      },
                  ]
              }
            }
        }
    ],
    "operAccountId":"创建者账号",
    "operAccountUniqueId":"业务系统方关联的创建者ID"
    
}

响应json

{
    "code":200,
    "message":"success",
    "data":{}
}

作废签署流程

接口描述:

    作废签署流程。

  1. 如果原签署流程没有人签署,则直接作废(已实现)。

  2. 如果原签署流程有人签署过,则签署过的人需要加盖作废章进行作废签署,未签署的人员,将不能进行签署(未实现)。

  3. 作废章签章坐标根据指定的页码和坐标计算,同一个账号一份文档仅用加盖一次作废章。

  4. 作废章意愿认证方式,同原流程一致。

  5. 作废章证书和原流程签署证书一致。

  6. 作废章签署后,作废流程结束。

服务名称:

    /v1/signFlow/cancel

请求方式:

    POST

请求参数

参数 类型 必须 描述
signFlowId string false 签署流程ID,signFlowId 和 bizId两个参数至少一个有值
bizId string false 业务系统方绑定的签署流程ID
reason string true 流程作废原因
operAccountId string false 操作人accountId, operAccountId和operAccountUniqueId,两者不能同时为空,当两者都有值时,以operAccountId为准
operAccountUniqueId string false 业务系统方关联的唯一用户标识

响应参数

参数 类型 描述
code int 响应码,200:成功
data cancelSignFlowInfo
message string 响应信息

cancelSignFlowInfo

参数 类型 描述
signFlowId string 签署流程ID
bizId string 业务系统方绑定的签署流程ID
signStatus string 原签署流程状态:1:待发起,2: 签署中,3:已过期,4:已完成,5:作废中,6:已作废
cancelSignFlow cancelSignFlowInfo 作废流程信息

cancelSignFlowInfo

参数 类型 描述
cancelSignFlowId string 作废签署流程ID
cancelSigners List< cancelSigner> 作废签署信息
signDocs List< signDoc> 签署文档信息

cancelSigner

参数 类型 描述
actionId string 作废签署动作ID,用于接口发起签署作废印章
accountId string 账号ID
uniqueId string 业务方系统关联的唯一用户标识
accountName string 账号名称
signUrl String 署url,如果业务方实现,返回空值。需通过签署接口,发起作废签章

signDocs

参数 类型 描述
docId string 文档ID
fileKey string 文档key,用于文档的下载或者预览

请求json

{
    "signFowId":"签署流程ID",
    "bizId":"业务系统方关联的签署流程ID",
    "reason":"作废原因"
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "signFlowId":"",
        "bizId":"",
        "signStatus":2,
        "cancelSignFlow":{
            "cancelSignFlowId":"作废流程ID",
            "cancelSigners":[
                {
                    "actionId":"签署动作ID",
                    "accountId":"账号ID",
                    "uniqueId":"业务系统关联的唯一用户标识",
                    "accountName":"账号名称",
                    "signUrl":"签署页面"
                }
            ]
        }
    }
}

签署

接口描述:

    文件签署,签署流程发布后,方可调用此接口

  1. 签署前需要校验意愿认证结果,通过后方可签署

服务名称:

    /v1/signFlow/sign

请求方式:

    POST

请求参数

参数 类型 必须 描述
signFlowId string true 签署流程ID,
bizId string false 业务系统方关联的签署流程ID
signer signerInfo true 签署信息
operAccountId string false 操作人accountId, operAccountId和operAccountUniqueId,两者不能同时为空,当两者都有值时,以operAccountId为准
operAccountUniqueId string false 业务系统方关联的唯一用户标识

signerInfo

参数 类型 必须 描述
signerId string false 可信签签署ID, signerId和signerUniqueId不能同时为空
signerUniqueId string false 业务系统关联的签署ID,供后续关联意愿认证
signDocDetails List< signDocDetail > false 文档签署详细信息

signDocDetail

参数 类型 必须 描述
fileKey string true 签署文档fileKey
sealActions List< sealAction > true 签署动作信息

sealAction

参数 类型 必须 描述
addSignTime boolean false 印章下方是否动态添加时间戳,默认false
sealId string false 印章ID, 可以不指定。页面签时,不指定显示此用户可用的印章列表,自动签署时,则使用默认印章。
signType int true 签署方式:1:用户拖拽印章坐标方式,2:关键字,3:左骑缝,4:右骑缝,5:多页盖章, 6:绝对坐标
findKey string false 当signType=2是必填
keyIndex int false 关键字索引,当存在多个关键字时,指定在第几个关键字处签章。-1:最后一个关键字
offsetX int false X轴偏移:整份文档的X轴按照50000份计算,以左上角为原点
offsetY int fasle Y轴偏移:整份文档的Y轴按照50000份计算,以左上角为原点
ridingSealMaxCut int false 骑缝章时,一个印章被切割的最大份数,默认20
ridingSealPageMode int false 骑缝章页模式:1:单页,2:双页
sealPage string false 签章页码:连续页码可用"-"指定范围,例如:1-5表示1,2,3,4,5页范围,非连续页可指定页码,使用“,”分割,例如:1,3,5
positionX int false X轴坐标:整份文档的X轴按照50000份计算,以左上角为原点
positionY int false Y轴坐标:整份文档的Y轴按照50000份计算,以左上角为原点

响应参数

参数 类型 描述
code int 响应码,200:成功
data signerResult
message string 响应信息

signerResult

参数 类型 描述
signerId string 响应码,200:成功
accountId string 签署账号ID
accountName string 签署账号名称
signUrl string 签署页面

请求json

{
    "signFlowId":"签署流程ID",
    "bizId":"",
    "signer":{
        "signerId":"可信签签署ID",
        "signerUniqueId":"业务系统关联的签署ID",       
        "signDocDetails":[{
            "fileKey":"签署文档fileKey",
            "sealActions":[                    
                {                        
                    "addSignTime":false,
                    "sealId":"axo01",
                    "signType":2,     //2 通过关键字盖章
                    "findKey":"签章处",
                    "keyIndex":-1,
                    "offsetX":1000,
                    "offsetY":1000
                },
                {                        
                    "addSignTime":false,
                    "sealId":"axo01",
                    "signType":2,                       
                    "positionX":25000,
                    "positionY":25000,
                    "ridingSealMaxCut":20,
                    "ridingSealPageMode":1,
                    "sealPage":"5-20"
                }
            ]
        }],
    }
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "signer":{           
            "signerId":"签署人ID",
            "accountId":"账号ID",
            "accountName":"账号名称",
            "signUrl":"签署页面"
        }
    }
}

文件签名盖章

接口描述:

    此接口直接对PDF文件进行签名盖章,返回盖章后的文件。

服务名称:

    /v1/signFlow/addSeal

请求方式:

    POST

请求参数

参数 类型 必须 描述
bizId string false 唯一的业务ID,一个合同对应一个bizId
signDocs List< signDocInfo > true 签署文档信息

signDocInfo

参数 类型 必须 描述
fileUniqueId string true 文件唯一标识,可以通过GUUID生成
docName string true 文档名称
uploadType int true 上传方式:1 接口上传的文件(fileKey不能为空);2 文件base64字符串(fileData不能为空);3 模板在线合成文件(templateInfo字段不能为空) ; 4 通过http下载待盖章文件(downloadUrl 不能为空)
filePwd string false 文档密码,如果文档有密码保护则需要传递
fileOrder int false 文档显示需要,从小到大排序
fileKey string false 文档fileKey由合同上传接口返回,uploadType=1时不能为空
fileData string false PDF文件的Base64字符串,uploadType=2时不能为空
templateInfo templateObject false 可信签模板合成文件对象,uploadType=3时不能为空
downloadUrl string false 待盖章文件的下载地址,uploadType=4时不能为空
sealActions List< sealAction > true 签署动作信息

templateObject

参数 类型 必须 描述
templateId string false 模板ID, templateId和templateNo两者不能同时为空,两者都有值则以templateId为准
templateNo string false 业务系统关联模板编号
templateData templateDataInfo false 模板数据要素对应的值

templateDataInfo

参数 类型 必须 描述
key-value object false key:value键值对值,可以包含数组,用于列表数据生成

sealAction

参数 类型 必须 描述
addSignTime boolean false 印章下方是否动态添加时间戳,默认false
sealId string true 印章ID, 可以不指定。页面签时,不指定显示此用户可用的印章列表,自动签署时,则使用默认印章。
signType int true 签署方式:2:关键字,3:左骑缝,4:右骑缝,5:多页盖章, 6:绝对坐标
findKey string false 当signType=2是必填
keyIndex int false 关键字索引,当存在多个关键字时,指定在第几个关键字处签章。-1:最后一个关键字
offsetX int false X轴偏移:整份文档的X轴按照50000份计算,以左上角为原点
offsetY int fasle Y轴偏移:整份文档的Y轴按照50000份计算,以左上角为原点
ridingSealMaxCut int false 骑缝章时,一个印章被切割的最大份数,默认20
ridingSealPageMode int false 骑缝章页模式:1:单页,2:双页
sealPage string false 签章页码:连续页码可用"-"指定范围,例如:1-5表示1,2,3,4,5页范围,非连续页可指定页码,使用“,”分割,例如:1,3,5
positionX int false X轴坐标:整份文档的X轴按照50000份计算,以左上角为原点
positionY int false Y轴坐标:整份文档的Y轴按照50000份计算,以左上角为原点

响应参数

参数 类型 描述
code int 响应码,200:成功
data signFileResult
message string 响应信息

signFileResult

参数 类型 描述
bizId string 业务ID,如果请求有传入,则回显
signFiles List< signFilesResult > 签署后文件信息

signDocsInfoResult

参数 类型 描述
fileId string 文件ID
downloadUrl string 签署后文件下载地址

请求json

{
    "bizId":"唯一的业务ID,一个合同对应一个bizId",    
    "signDocs":[
        {
            "fileUniqueId":"文件唯一ID",
            "uploadType": 2,  //上传方式:12 文件base64字符串;3 模板在线合成文件  4  下载远程文件进行盖章            
            "docName":"文档展示名称",
            "fileOrder":2,
            "filePwd":"",
            "fileData":"文件的Base64字符串",
            "sealActions":[                    
                {                        
                    "addSignTime":false,
                    "sealId":"axo01",
                    "signType":2,     //2 通过关键字盖章
                    "findKey":"签章处",
                    "keyIndex":-1,
                    "offsetX":1000,
                    "offsetY":1000
                },
                {                        
                    "addSignTime":false,
                    "sealId":"axo01",
                    "signType":3,                       
                    "positionX":25000,
                    "positionY":25000,
                    "ridingSealMaxCut":20,
                    "ridingSealPageMode":1,
                    "sealPage":"5-20"
                }
              ]
        },
        {
            "fileUniqueId":"文件唯一ID",
            "uploadType": 4,  //上传方式:12 文件base64字符串;3 模板在线合成文件  4  http方式下载文件进行盖章            
            "docName":"文档展示名称",
            "fileOrder":2,
            "filePwd":"",
            "downloadUrl":"http方式文件下载",
            "sealActions":[                    
                {                        
                    "addSignTime":false,
                    "sealId":"axo01",
                    "signType":2,     //2 通过关键字盖章
                    "findKey":"签章处",
                    "keyIndex":-1,
                    "offsetX":1000,
                    "offsetY":1000
                },
                {                        
                    "addSignTime":false,
                    "sealId":"axo01",
                    "signType":3,                       
                    "positionX":25000,
                    "positionY":25000,
                    "ridingSealMaxCut":20,
                    "ridingSealPageMode":1,
                    "sealPage":"5-20"
                }
              ]
        },
        {
            "fileUniqueId":"文件唯一ID",
            "uploadType": 3,  //上传方式:1 接口上传的文件;2 文件base64字符串;3 模板在线合成文件            
            "docName":"文档展示名称",
            "fileOrder":3,
            "filePwd":"",
            "templateInfo":{
              "templateId":"模板ID",
              "templateNo":"业务系统关联的模板编号",
              "templateData":{
                  "name":"张三",
                  "age":"30",
                  "listData":[
                      {
                          "orderNo":"100000001",
                          "goodsName":"ipad",
                          "money":"1001",
                      },
                      {
                          "orderNo":"100000002",
                          "goodsName":"iPhone",
                          "money":"1002",
                      },
                  ]
              }
            },
            "sealActions":[                    
                {                        
                    "addSignTime":false,
                    "sealId":"axo01",
                    "signType":2,     //2 通过关键字盖章
                    "findKey":"签章处",
                    "keyIndex":-1,
                    "offsetX":1000,
                    "offsetY":1000
                },
                {                        
                    "addSignTime":false,
                    "sealId":"axo01",
                    "signType":3,                       
                    "positionX":25000,
                    "positionY":25000,
                    "ridingSealMaxCut":20,
                    "ridingSealPageMode":1,
                    "sealPage":"5-20"
                }
              ]
        }
    ]
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "bizId":"业务系统关联的业务ID,如果请求有传入,则回显",
        "signFiles":[
          {
            "fileId":"文件ID",
            "downloadUrl":"签署后文件下载地址"
          },
          {
            "fileId":"文件ID",
            "downloadUrl":"签署后文件下载地址"
          }
        ]
               
    }
}

签署预览

接口描述:

    查看签署文档、附件、签署进度信息

服务名称:

    /v1/signFlow/preview

请求方式:

    POST

请求参数

参数 类型 必须 描述
signFlowId string true 签署流程ID
bizId string false 业务系统方关联的签署流程ID
operAccountId string false 操作人accountId, operAccountId和operAccountUniqueId,两者不能同时为空,当两者都有值时,以operAccountId为准
operAccountUniqueId string false 业务系统方关联的唯一用户标识

响应参数

参数 类型 描述
code int 响应码,200:成功
data previewUrl
message string 响应信息

previewUrl

参数 类型 描述
previewUrl string 预览URL地址

请求json

{
    "signFlowId":"签署流程ID",
    "bizId":"",
}

响应json

{
    "code":200,
    "message":"success",
    "data":{
        "previewUrl":"预览URL"
    }
}

查询签署流程信息

接口描述:

    查看签署流程、签署人、签署进度、签署文件信息

服务名称:

    /v1/signFlow/getFlowInfo

请求方式:

    POST

请求参数

参数 类型 必须 描述
signFlowId string true 签署流程ID

响应参数

参数 类型 描述
code int 响应码,200:成功
data List<> 返回信息
message string 响应信息

请求json

{
    "signFlowId":"签署流程ID",
}

响应json

{
  "code": 200,
  "message": "success",
  "data": {
    "signerInfo": [
      {
        "firsttime": "签署节点创建时间",
        "signerList": [
          {
            "accountId": "签署人id",
            "companyName": "签署公司名称",
            "userName": "签署人名称",
            "signUrl": "签署人链接",
            "signerState": "签署节点状态【0待处理,1已处理,2撤回,3退回】"
          }
        ],
        "title": "节点名称"
      },
      {
        "firsttime": "签署节点创建时间",
        "signerList": [
          {
            "accountId": "签署人id",
            "companyName": "签署公司名称",
            "userName": "签署人名称",
            "signUrl": "签署人链接",
            "signerState": "签署节点状态【0待处理,1已处理,2撤回,3退回】"
          }
        ],
        "title": "节点名称"
      },
    ],
    "fileInfo": [
      {
        "fileName": "文件名称",
        "fileKey": "文件key",
        "fileType": "文件类型"
      },
    ],
    "flowInfo": {
      "lastTime": "最后修改时间",
      "createTime": "流程创建时间",
      "signFlowId": "签署流程id",
      "flowStatus": "流程状态【0已完成,1办理中,2已过期,3已撤回,4已退回,5已废除,6草稿,7已终止】",
      "signState": "签署节点状态"
    }
  }
}

签署回调

接口描述:

    回调接口由业务系统完成,电子合同系统在签署完成、拒绝、作废、意愿认证等环节调用此回调接口,实现和业务系统的信息交互

服务名称:

    由业务系统定义,并通过创建签署流程接口的completeCallUrl传入

请求方式:

    POST

请求参数

参数 类型 必须 描述
event string true 通知事件.SIGN_FLOW_COMPLETE:签署完成、SIGN_FLOW_UPDATE:签署过程更新、AUTH_USER:意愿认证、SIGN_FLOW_NOTIFY:签署通知
bizId string false 业务系统方关联的签署流程ID,创建签署流程时有值则会传入
flowId string true 签署流程ID
flowType string true common:普通签署、cancellation:作废签署
status string true 合同签署文档的状态
accountInfo accountInfo false 操作人信息
finishDocUrls List< Urls> false 签署文档信息,签署完成后有值
signResult string false 签署结果
signDescribe string false 签署说明
signTime string false 签署时间
createTime string false 合同创建时间
endTime string false 合同结束时间
nextSigners List< nextSigner > false 下节点签署信息

accountInfo

参数 类型 必须 描述
accountId string true 账号ID
AccountUniqueId string false 业务系统关联的唯一用户标识,有则传值
companyId string true 企业ID
companyUniqueId string false 业务系统关联的唯一企业标识,有则传值
authId string false 意愿认证人脸认证ID
userName string false 用户名称
signUrl string false 签署url

finishDocUrls

参数 类型 必须 描述
docId string false 文档ID
docFileKey string false 原始文档fileKey
signFileKey string false 签署后的文档fileKey
downloadUrl string false 签署后的文档下载url

nextSigner

参数 类型 必须 描述
signerId string true 人员签署ID
signUrl string true 签署url
accountId string false 签署用户userID
userName string false 签署用户姓名
companyId string false 签署用户所属企业ID
companyName string false 签署用户所属企业名称

响应参数

参数 类型 描述
code int 响应码,200:成功
message string 响应信息

响应json

{
    "code":"200",
    "message":"",
}

回调接收例子

@ApiOperation("YI、测试回调地址专用")
@PostMapping("testCallBack")
public boolean testCallBack(HttpServletRequest request) {
    // 获取body
    StringBuilder data = new StringBuilder();
    String line;
    BufferedReader reader;
    int i = 1;
    try {
        reader = request.getReader();
        while (null != (line = reader.readLine())) {
            data.append(line);
        }

        // 解密
        String retStr = AESSignUtil.getAESDecrypt(data.toString(), "a5a3083654534035");

        log.info("接收回调数据:\n{}", retStr);

        return true;
    } catch (IOException e) {
        throw new BusinessException("失败!");
    }
}

解密代码

import org.apache.commons.codec.binary.Base64;
import javax.crypto.*;
import javax.crypto.spec.SecretKeySpec;

/**
 * @Description : AES加密解密
 * @Author : lijd
 * @Date: 2022-08-16 21:23
 */
public class AESSignUtil {

    private final static String CHAR_SET = "UTF-8";
    private final static String ALGORITHM = "AES";

    /**
     * 加密
     * @param content  内容
     * @param key 加密秘钥
     * @return 经过base64编码后的hmac
     */
    public static String getAESEncrypt(String content, String key){
        return getEncryptSign(content, key, ALGORITHM);
    }

    /**
     * 解密
     * @param content
     * @param key
     * @return
     */
    public static String getAESDecrypt(String content, String key){
        return getDecryptData(content, key, ALGORITHM);
    }

    /**
     * 加密
     * @param content  内容
     * @param key 加密秘钥
     * @param hamaAlgorithm hamc签名算法名称:例如HmacMD5,HmacSHA1,HmacSHA256
     * @return 经过base64编码后的hmac
     */
    public static String getEncryptSign(String content, String key, String hamaAlgorithm){
        byte[] result = null;
        try {
            if (key.length() != 16) {
                System.out.print("Key长度不是16位");
                return null;
            }

            // 根据给定的字节数组构造一个密钥,第二参数指定一个密钥算法的名称
            SecretKeySpec signinKey = new SecretKeySpec(key.getBytes(), hamaAlgorithm);

            // "算法/模式/补码方式"
            Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
            cipher.init(Cipher.ENCRYPT_MODE, signinKey);

            // 完成 Mac 操作
            byte[] rawHmac = cipher.doFinal(content.getBytes(CHAR_SET));
            // 此处使用base64加密,可根据自己项目内实现更改。
            result = Base64.encodeBase64(rawHmac);
        } catch (Exception e) {
            System.err.println(e.getMessage());
        }
        if (null != result) {
            return new String(result);
        } else {
            return null;
        }
    }

    /**
     * 解密
     * @param content
     * @param key
     * @param hamaAlgorithm
     * @return
     */
    public static String getDecryptData(String content, String key, String hamaAlgorithm){
        byte[] result = null;
        try {
            if (key.length() != 16) {
                System.out.print("Key长度不是16位");
                return null;
            }

            // 根据给定的字节数组构造一个密钥,第二参数指定一个密钥算法的名称
            SecretKeySpec signinKey = new SecretKeySpec(key.getBytes(), hamaAlgorithm);

            // "算法/模式/补码方式"
            Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
            cipher.init(Cipher.DECRYPT_MODE, signinKey);

            // base64
            byte[] decodeBase64 = Base64.decodeBase64(content);

            // 完成操作
            byte[] rawHmac = cipher.doFinal(decodeBase64);
            String originalString = new String(rawHmac,CHAR_SET);
            return originalString;
        } catch (Exception e) {
            System.err.println(e.getMessage());
        }
        if (null != result) {
            return new String(result);
        } else {
            return null;
        }
    }

}

请求json

{
"event":"SIGN_FLOW_COMPLETE",
"createTime":"2022-05-23 16:15:29",
"endTime":"2022-05-23 19:19:19",
"finishDocUrls":[
  {
    "docFileKey":"原始文件key",
    "downloadDocUrl":"文件下载地址",
    "signFileKey":"签署后文件key"
  }
],
"flowId":"签署流程ID",
"flowType":"Common",
"signResult":"签署成功",
"signDescribe":"流程发起,待XX签署",
"status":"办理中"
}

#update 每个签署事件的回调
{
"accountInfo":{
  "accountId":"用户账号ID",
  "AccountUniqueId":"业务系统关联的唯一用户标识",
  "userName":"张二",
  "companyId":"企业ID",
  "companyUniqueId":"业务系统关联的唯一企业ID"

},
"nextSigners":[{ 
    "signerId":"签署人ID",
    "signUrl":"当前用户签署文件URL地址",
    "accountId":"用户账号ID",
    "userName":"张二",
    "companyName":"企业名称",
    "companyId":"企业ID"
  },
  { 
    "signerId":"签署人ID",
    "signUrl":"当前用户签署文件URL地址",
    "userName":"张二",
    "companyName":"企业名称",
    "companyId":"企业ID"
  }
],
"action":"SIGN_FLOW_UPDATE",
"createTime":"2020-09-21 19:17:29",
"flowId":54991,
"flowType":"common",
"signResult":"签署成功",
"status":"已完成"
}

签署催办

接口描述:

     向签署流程中下一位或多位签署人发送催办链接,催办链接与签署链接一致

服务名称:

    /v1/signFlow/doUrge

请求方式:

    POST

请求参数

参数 类型 必须 描述
signFlowId string true 签署流程id

响应参数

参数 类型 描述
code int 响应码,200:成功
data Object
message string 响应信息

请求json

{
  "signFlowId":"123"
}

响应json

{
    "code": 200,
    "message": "success"
}

错误码对照表

错误代码 对应信息
4000 系统业务异常
200 正确返回
1001 请求参数格式错误
2001 没有可用余额
2004 业务未开通或其他错误
2006 超出请求数限制
9999 系统错误,或系统无法识别请求信息
4100 未知错误

运营商三要素

错误代码 对应信息
4101 无记录
4102 不一致:具体不一致字段未知
4103 手机号一致,证件号和姓名均不一致
4104 手机号和姓名一致,证件号不一致
4105 手机号和证件号一致,关联的姓名不一致

银行卡三要素

错误代码 对应信息
4131 无记录(预留,暂不返回)
4132 无匹配
4133 不匹配: 具体不匹配的字段未知
4134 不匹配:证件号码不匹配
4135 不匹配:姓名不匹配
4136 不匹配:证件类型或号码不匹配
4137 不匹配:卡号不正确
4138 不匹配:已注销
4139 该银行卡暂不支持查询或未开通无卡支付功能
4140 当日查询次数超限
4141 卡状态异常或卡号错误
4142 交易异常