跳到主要内容

获取H5批量签署链接

1. 接口描述

接口请求域名: essbasic.tencentcloudapi.com 。

该接口用于发起合同后,生成个人用户的批量签署链接, 暂时不支持企业端签署。 注意

  1. 该接口目前仅支持签署人类型是个人签署方的批量签署场景(ApproverType=PERSON)。
  2. 该接口可生成批量签署链接的C端签署人必须仅有手写签名(控件类型为SIGN_SIGNATURE)和时间类型的签署控件不支持填写控件
  3. 请确保C端签署人在批量签署合同中为待签署状态,如需顺序签署请待前一位参与人签署完成后,再创建该C端用户的签署链接。
  4. 该签署链接有效期为30分钟,过期后将失效,如需签署可重新创建批量签署链接 。
  5. 该接口返回的签署链接适用于APP集成的场景,支持APP打开或浏览器直接打开,不支持微信小程序嵌入。 跳转到小程序的实现,参考微信官方文档(分为全屏半屏两种方式),如何配置也可以请参考: 跳转电子签小程序配置
  6. 因h5涉及人脸身份认证能力基于慧眼人脸核身,对Android和iOS系统均有一定要求, 因此App嵌入H5签署合同需要按照慧眼提供的慧眼人脸核身兼容性文档做兼容性适配

默认接口请求频率限制:20次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称必选类型描述
ActionString公共参数,本接口取值:ChannelCreateBatchQuickSignUrl。
VersionString公共参数,本接口取值:2021-05-26。
RegionString公共参数,此参数为可选参数。
FlowApproverInfoFlowApproverInfo批量签署的流程签署人,其中姓名(ApproverName)、参与人类型(ApproverType)必传,手机号(ApproverMobile)和证件信息(ApproverIdCardType、ApproverIdCardNumber)可任选一种或全部传入。
注:
1. ApproverType目前只支持个人类型的签署人。
2. 签署人只能有手写签名和时间类型的签署控件,其他类型的填写控件和签署控件暂时都未支持。
3. 当需要通过短信验证码签署时,手机号ApproverMobile需要与发起合同时填写的用户手机号一致。
AgentAgent关于渠道应用的相关信息,包括渠道应用标识、第三方平台子客企业标识及第三方平台子客企业中的员工标识等内容,您可以参阅开发者中心所提供的 Agent 结构体以获取详细定义。
FlowIds.NArray of String批量签署的合同流程ID数组。
注: 在调用此接口时,请确保合同流程均为本企业发起,且合同数量不超过100个。
FlowGroupIdString合同组编号
注:该参数和合同流程ID数组必须二选一
示例值:yDwFdUUckpsveo27UEQPEVo14KnASuGI
JumpUrlString签署完之后的H5页面的跳转链接,此链接及支持http://和https://,最大长度1000个字符。(建议https协议)
SignatureTypes.NArray of Integer指定批量签署合同的签名类型,可传递以下值:
  • 0:手写签名(默认)
  • 1:OCR楷体
  • 2:姓名印章
  • 3:图片印章
  • 4:系统签名

注:
  • 默认情况下,签名类型为手写签名
  • 您可以传递多种值,表示可用多种签名类型。
  • 该参数会覆盖您合同中的签名类型,若您在发起合同时限定了签名类型(赋值签名类型给ComponentTypeLimit),请将这些签名类型赋予此参数

示例值:[0, 1, 2, 3, 4]
ApproverSignTypes.NArray of Integer指定批量签署合同的认证校验方式,可传递以下值:
  • 1:人脸认证(默认),需进行人脸识别成功后才能签署合同
  • 2:密码认证(默认),需输入与用户在腾讯电子签设置的密码一致才能校验成功进行合同签署
  • 3:运营商三要素,需到运营商处比对手机号实名信息(名字、手机号、证件号)校验一致才能成功进行合同签署。

注:
  • 默认情况下,认证校验方式为人脸和密码认证
  • 您可以传递多种值,表示可用多种认证校验方式。

示例值:[1, 2, 3]
SignTypeSelectorInteger生成H5签署链接时,您可以指定签署方签署合同的认证校验方式的选择模式,可传递一下值:
  • 0:签署方自行选择,签署方可以从预先指定的认证方式中自由选择;
  • 1:自动按顺序首位推荐,签署方无需选择,系统会优先推荐使用第一种认证方式。

注:
不指定该值时,默认为签署方自行选择。
示例值:0

3. 输出参数

参数名称类型描述
FlowApproverUrlInfoFlowApproverUrlInfo签署人签署链接信息
RequestIdString唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 为个人用户生成合同组H5批量签署链接

  1. 为个人用户生成合同组H5批量签署链接
  2. 使用默认的签名类型
  3. 使用默认的签署方式
  4. 默认跳转到合同列表页

输入示例

POST / HTTP/1.1
Host: essbasic.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: ChannelCreateBatchQuickSignUrl
<公共请求参数>

{
"Agent": {
"ProxyOrganizationOpenId": "org_dianziqian",
"AppId": "yDRSRUUgygj6rq7wUuO4zjECxndqQApl"
},
"FlowApproverInfo": {
"ApproverType": "PERSON",
"Mobile": "13200000000",
"Name": "典子谦",
"IdCardNumber": "620000198802020000",
"IdCardType": "ID_CARD"
},
"FlowGroupId": "yDSL9UUckpo*****jwSsug2y3cW"
}

输出示例

{
"Response": {
"FlowApproverUrlInfo": {
"ApproverType": "PERSON",
"LongUrl": "https://quick.qian.tencent.cn/guide?Code=yDwi0**BWW4MYlpI&CodeType=QUICK&shortKey=yDwi**KF45&token=C**E",
"Mobile": "13200000000",
"Name": "典子谦",
"SignUrl": "https://test.essurl.cn/C**E"
},
"RequestId": "s16986**08"
}
}

示例2 发起合同后,为C端签署人创建H5批量签署链接

  1. 创建批量签署链接的企业与待批量签署的合同属于同一个企业
  2. 批量签署的合同数量不少于1份,不超过100份
  3. 上述合同均为待该C端签署人签署状态
  4. 该C端签署人仅有手写签名控件,不需要填写合同
  5. 企业已经购买了专业版或以上版本套餐

输入示例

POST / HTTP/1.1
Host: essbasic.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: ChannelCreateBatchQuickSignUrl
<公共请求参数>

{
"Agent": {
"ProxyOrganizationOpenId": "org_dianziqian",
"AppId": "yDRSRUUgygj6rq7wUuO4zjECxndqQApl"
},
"ApproverSignTypes": [
1,
3
],
"FlowApproverInfo": {
"ApproverType": "PERSON",
"IdCardNumber": "620000198802020000",
"IdCardType": "ID_CARD",
"Mobile": "13200000000",
"Name": "典子谦"
},
"FlowIds": [
"yDwFkUUckpstin4sUuZjBEY5Ia2XB7sz",
"yDwFkUUckpstzjhfUugNAWf1KibXqS26"
],
"JumpUrl": "https://abc.com",
"SignatureTypes": [
0,
1
]
}

输出示例

{
"Response": {
"FlowApproverUrlInfo": {
"ApproverType": "PERSON",
"LongUrl": "https://quick.qian.tencent.cn/guide?Code=yDwi0**BWW4MYlpI&CodeType=QUICK&shortKey=yDwi**KF45&token=C**E",
"Mobile": "13200000000",
"Name": "典子谦",
"SignUrl": "https://test.essurl.cn/C**E"
},
"RequestId": "s16986**08"
}
}

示例3 创建H5批量签署链接,签署完成后跳转到指定地址

  1. 个人用户在批量签署的合同中是待签署的状态
  2. 签署的合同中个人用户没有填写控件,只有签名控件
  3. 企业的版本符合专业版及以上企业版本
  4. 批量签署链接中指定签名类型为手写签名和OCR楷体签名
  5. 批量签署链接中指定意愿确认方式为人脸认证和手机号认证
  6. 批量签署链接中指定签署完成后的跳转地址为https://abc.com

输入示例

POST / HTTP/1.1
Host: essbasic.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: ChannelCreateBatchQuickSignUrl
<公共请求参数>

{
"Agent": {
"ProxyOrganizationOpenId": "org_dianziqian",
"AppId": "yDRSRUUgygj6rq7wUuO4zjECxndqQApl"
},
"FlowApproverInfo": {
"ApproverType": "PERSON",
"Mobile": "13200000000",
"Name": "典子谦",
"IdCardNumber": "620000198802020000",
"IdCardType": "ID_CARD"
},
"JumpUrl": "https://abc.com",
"SignatureTypes": [
0,
1
],
"ApproverSignTypes": [
1,
3
],
"FlowIds": [
"yDwFmUUckpstqfvzUE1h3jo1f3cqjkGm",
"yDwFmUUckpst10i3UubBSat8PWOt2iQF"
]
}

输出示例

{
"Response": {
"FlowApproverUrlInfo": {
"ApproverType": "PERSON",
"LongUrl": "https://quick.qian.tencent.cn/guide?Code=yDwi0**BWW4MYlpI&CodeType=QUICK&shortKey=yDwi**KF45&token=C**E",
"Mobile": "13200000000",
"Name": "典子谦",
"SignUrl": "https://test.essurl.cn/C**E"
},
"RequestId": "s16986**08"
}
}

示例4 错误示例-创建签署链接的企业不是待批量签署合同的发起方

  1. 企业A创建了一些合同
  2. 企业B用上述合同编号创建批量签署链接

输入示例

POST / HTTP/1.1
Host: essbasic.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: ChannelCreateBatchQuickSignUrl
<公共请求参数>

{
"Agent": {
"ProxyOrganizationOpenId": "org_dianziqian",
"AppId": "yDRSRUUgygj6rq7wUuO4zjECxndqQApl"
},
"FlowApproverInfo": {
"ApproverType": "PERSON",
"Mobile": "13200000000",
"Name": "典子谦",
"IdCardNumber": "620000198802020000",
"IdCardType": "ID_CARD"
},
"SignatureTypes": [
0,
1
],
"ApproverSignTypes": [
1,
3
],
"FlowIds": [
"yDwFkUUckpstzjhfUugNAWf1KibXqS26"
]
}

输出示例

{
"Response": {
"Error": {
"Code": "FailedOperation",
"Message": "不支持非当前企业发起的合同,生成批量签署链接。不满足合同:[\"yDwFkUUckpstzjhfUugNAWf1KibXqS26\"]"
},
"RequestId": "s1698**02"
}
}

示例5 错误示例-创建签署链接中指定的C端个人用户不在合同参与人列表中

  1. 合同已经创建完成,其中个人用户为A
  2. 创建个人H5批量签署链接中的ApproverType指定了个人类型(ApproverType=PERSON)
  3. 创建个人H5批量签署链接中的姓名、手机号、证件信息指定为用户B

输入示例

POST / HTTP/1.1
Host: essbasic.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: ChannelCreateBatchQuickSignUrl
<公共请求参数>

{
"Agent": {
"ProxyOrganizationOpenId": "org_dianziqian",
"AppId": "yDRSRUUgygj6rq7wUuO4zjECxndqQApl"
},
"FlowApproverInfo": {
"ApproverType": "PERSON",
"Mobile": "13200000000",
"Name": "典子谦",
"IdCardNumber": "620000198802020000",
"IdCardType": "ID_CARD"
},
"SignatureTypes": [
0,
1
],
"ApproverSignTypes": [
1,
3
],
"FlowIds": [
"yDwFkUUckpstzjhfUugNAWf1KibXqS26"
]
}

输出示例

{
"Response": {
"Error": {
"Code": "FailedOperation",
"Message": "在合同[yDwFkUUckpstzjhfUugNAWf1KibXqS26]中无法找到参与人[姓名:典子谦,手机号:13200000000,证件号:620000198802020000,证件类型:ID_CARD,参与人类型:1]"
},
"RequestId": "s1698**53"
}
}

示例6 错误示例-创建批量签署链接中的合同,个人用户还有填写控件需要补充

  1. 合同已经创建完成,其中个人用户A需要补充一些合同信息
  2. 给个人用户A创建批量签署链接

输入示例

POST / HTTP/1.1
Host: essbasic.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: ChannelCreateBatchQuickSignUrl
<公共请求参数>

{
"Agent": {
"ProxyOrganizationOpenId": "org_dianziqian",
"AppId": "yDRSRUUgygj6rq7wUuO4zjECxndqQApl"
},
"FlowApproverInfo": {
"ApproverType": "PERSON",
"Mobile": "13200000000",
"Name": "典子谦",
"IdCardNumber": "620000198802020000",
"IdCardType": "ID_CARD"
},
"SignatureTypes": [
0,
1
],
"ApproverSignTypes": [
1,
3
],
"FlowIds": [
"yDwFkUUckpstzjhfUugNAWf1KibXqS26"
]
}

输出示例

{
"Response": {
"Error": {
"Code": "FailedOperation",
"Message": "个人H5批量签署,不支持还需签署方推拽签署控件的合同。不满足合同:[\"yDwFkUUckpstzjhfUugNAWf1KibXqS26\"]"
},
"RequestId": "s1698**1759"
}
}

示例7 错误示例-为个人用户生成H5批量签署链接,既传入了合同流程ID信息,又传入了合同组ID信息

  1. 指定了合同流程ID信息
  2. 指定了合同组ID信息

输入示例

POST / HTTP/1.1
Host: essbasic.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: ChannelCreateBatchQuickSignUrl
<公共请求参数>

{
"Agent": {
"ProxyOrganizationOpenId": "org_dianziqian",
"AppId": "yDRSRUUgygj6rq7wUuO4zjECxndqQApl"
},
"FlowApproverInfo": {
"ApproverType": "PERSON",
"Mobile": "13200000000",
"Name": "典子谦",
"IdCardNumber": "620000198802020000",
"IdCardType": "ID_CARD"
},
"FlowGroupId": "yDSL9UUckpo*****jwSsug2y3cW",
"FlowIds": [
"yDRSRUUgygj6******7wUuaaadqccc",
"yDRSRUUgygj6rq***Cpxxxsdfa"
]
}

输出示例

{
"Response": {
"Error": {
"Code": "FailedOperation",
"Message": "请勿同时传入流程ID和合同组ID,请检查参数后再试"
},
"RequestId": "s17007305****493"
}
}

示例8 错误示例-为个人用户生成H5批量签署链接,没有指定合同流程ID信息,也没有指定合同组ID信息

  1. 没有指定合同流程ID信息
  2. 没有指定合同组ID信息

输入示例

POST / HTTP/1.1
Host: essbasic.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: ChannelCreateBatchQuickSignUrl
<公共请求参数>

{
"Agent": {
"ProxyOrganizationOpenId": "org_dianziqian",
"AppId": "yDRSRUUgygj6rq7wUuO4zjECxndqQApl"
},
"FlowApproverInfo": {
"ApproverType": "PERSON",
"Mobile": "13200000000",
"Name": "典子谦",
"IdCardNumber": "620000198802020000",
"IdCardType": "ID_CARD"
}
}

输出示例

{
"Response": {
"Error": {
"Code": "FailedOperation",
"Message": "流程ID和合同组ID不能同时为空,请检查参数后再试"
},
"RequestId": "s1700727885657576147"
}
}

5. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码描述
FailedOperation操作失败。
InvalidParameterValue参数取值错误。
MissingParameter缺少参数错误。
ResourceNotFound资源不存在。
UnauthorizedOperation.NoPermissionFeature请升级到对应版本后即可使用该接口。
更多开发者交流反馈
购买咨询
4006-808-062
4006-808-062