tenyun
Version:
Promise based and chained Tencent Cloud OpenAPI client for NodeJS
839 lines (785 loc) • 430 kB
TypeScript
/// <reference types="node" />
import { AxiosPromise, AxiosRequestConfig } from "axios";
/** 应用相关信息, 整体应用的层级图如下注: 1. `不同的业务系统可以采用不同的应用,不同应用下的数据是隔离的, 应用A中的某个企业已经实名, 在应用B中此企业还需要重新认证` */
declare interface Agent {
/** 应用的唯一标识(由电子签平台自动生成)。不同的业务系统可以采用不同的AppId,不同AppId下的数据是隔离的。可以由控制台开发者中心-应用集成自主生成。位置如下: */
AppId: string;
/** 第三方应用平台自定义,对应第三方平台子客企业的唯一标识。一个第三方平台子客企业主体与子客企业ProxyOrganizationOpenId是一一对应的,不可更改,不可重复使用。(例如,可以使用企业名称的hash值,或者社会统一信用代码的hash值,或者随机hash值,需要第三方应用平台保存),最大64位字符串 */
ProxyOrganizationOpenId?: string;
/** 第三方平台子客企业中的员工/经办人,通过第三方应用平台进入电子签完成实名、且被赋予相关权限后,可以参与到企业资源的管理或签署流程中。 */
ProxyOperator?: UserInfo;
/** **不用填写**,在第三方平台子客企业开通电子签后,会生成唯一的子客应用Id(ProxyAppId)用于代理调用时的鉴权,在子客开通的回调中获取。 */
ProxyAppId?: string;
/** 内部参数,暂未开放使用 */
ProxyOrganizationId?: string;
}
/** 指定签署方经办人控件类型是个人印章签署控件(SIGN_SIGNATURE) 时,可选的签名方式。 */
declare interface ApproverComponentLimitType {
/** 签署方经办人在模板中配置的参与方ID,与控件绑定,是控件的归属方,ID为32位字符串。 */
RecipientId: string;
/** 签署方经办人控件类型是个人印章签署控件(SIGN_SIGNATURE) 时,可选的签名方式。签名方式:HANDWRITE-手写签名ESIGN-个人印章类型OCR_ESIGN-AI智能识别手写签名SYSTEM_ESIGN-系统签名 */
Values?: string[];
}
/** 签署方信息,发起合同后可获取到对应的签署方信息,如角色ID,角色名称 */
declare interface ApproverItem {
/** 签署方唯一编号在动态补充签署人场景下,可以用此编号确定参与方 */
SignId?: string;
/** 签署方角色编号在动态补充签署人场景下,可以用此编号确定参与方 */
RecipientId?: string;
/** 签署方角色名称 */
ApproverRoleName?: string;
}
/** 签署人个性化能力信息 */
declare interface ApproverOption {
/** 是否可以拒签 默认false-可以拒签 true-不可以拒签 */
NoRefuse?: boolean;
/** 是否可以转发 默认false-可以转发 true-不可以转发 */
NoTransfer?: boolean;
/** 当签署方有多个签署区时候,是否隐藏一键所有的签署区false:(默认)不隐藏true:隐藏,每个签署区要单独选择印章或者签名 */
HideOneKeySign?: boolean;
/** 签署人信息补充类型,默认无需补充。 **1** : 动态签署人(可发起合同后再补充签署人信息)注:`企业自动签不支持动态补充`注:`使用动态签署人能力前,需登陆腾讯电子签控制台打开服务开关` */
FillType?: number;
/** 签署人阅读合同限制参数 取值: LimitReadTimeAndBottom,阅读合同必须限制阅读时长并且必须阅读到底 LimitReadTime,阅读合同仅限制阅读时长 LimitBottom,阅读合同仅限制必须阅读到底 NoReadTimeAndBottom,阅读合同不限制阅读时长且不限制阅读到底(白名单功能,请联系客户经理开白使用) */
FlowReadLimit?: string;
/** 禁止在签署过程中添加签署日期控件 前置条件:文件发起合同时,指定SignBeanTag=1(可以在签署过程中添加签署控件): 默认值:false,在开启:签署过程中添加签署控件时,添加签署控件会默认自带签署日期控件 可选值:true,在开启:签署过程中添加签署控件时,添加签署控件不会自带签署日期控件 */
ForbidAddSignDate?: boolean;
}
/** 指定签署人限制项 */
declare interface ApproverRestriction {
/** 指定签署人姓名 */
Name?: string;
/** 指定签署人手机号,11位数字 */
Mobile?: string;
/** 指定签署人证件类型,ID_CARD-身份证,HONGKONG_AND_MACAO-港澳居民来往内地通行证,HONGKONG_MACAO_AND_TAIWAN-港澳台居民居住证 */
IdCardType?: string;
/** 指定签署人证件号码,其中字母大写 */
IdCardNumber?: string;
}
/** 授权出错信息 */
declare interface AuthFailMessage {
/** 第三方平台子客企业的唯一标识,长度不能超过64,只能由字母和数字组成。开发者可自定义此字段的值,并需要保存此 ID 以便进行后续操作。一个第三方平台子客企业主体与子客企业 ProxyOrganizationOpenId 是一一对应的,不可更改,不可重复使用。例如,可以使用企业名称的哈希值,或者社会统一信用代码的哈希值,或者随机哈希值。 */
ProxyOrganizationOpenId?: string;
/** 错误信息 */
Message?: string;
}
/** 企业扩展服务授权列表详情 */
declare interface AuthInfoDetail {
/** 扩展服务类型,和入参一致 */
Type?: string;
/** 扩展服务名称 */
Name?: string;
/** 授权员工列表 */
HasAuthUserList?: HasAuthUser[];
/** 授权企业列表(企业自动签时,该字段有值) */
HasAuthOrganizationList?: HasAuthOrganization[];
/** 授权员工列表总数 */
AuthUserTotal?: number;
/** 授权企业列表总数 */
AuthOrganizationTotal?: number;
}
/** 授权用户 */
declare interface AuthorizedUser {
/** 第三方应用平台的用户openid */
OpenId?: string;
}
/** 自动签开启、签署相关配置 */
declare interface AutoSignConfig {
/** 自动签开通个人用户信息, 包括名字,身份证等 */
UserInfo: UserThreeFactor;
/** 是否回调证书信息:**false**: 不需要(默认)**true**:需要注:`该字段已经失效,请勿设置此参数。` */
CertInfoCallback?: boolean;
/** 是否支持用户自定义签名印章:**false**: 不能自己定义(默认)**true**: 可以自己定义 */
UserDefineSeal?: boolean;
/** 回调中是否需要自动签将要使用的印章(签名)图片的 base64:**false**: 不需要(默认)**true**: 需要 */
SealImgCallback?: boolean;
/** 该字段已废弃,请使用【应用号配置】中的回调地址统一接口消息 */
CallbackUrl?: string;
/** 开通时候的身份验证方式, 取值为:**WEIXINAPP** : 微信人脸识别**INSIGHT** : 慧眼人脸识别**TELECOM** : 运营商三要素验证注:如果是小程序开通链接,仅支持传 WEIXINAPP。为空默认 WEIXINAPP如果是 H5 开通链接,支持传 INSIGHT / TELECOM。为空默认 INSIGHT */
VerifyChannels?: string[];
/** 设置用户开通自动签时是否绑定个人自动签账号许可。1: (默认)不绑定自动签账号许可开通,开通后一直有效, 后续使用合同份额进行合同发起注:`该字段已经失效,请勿设置此参数。` */
LicenseType?: number;
/** 开通成功后前端页面跳转的url,此字段的用法场景请联系客户经理确认。注:`仅支持H5开通场景`, `跳转链接仅支持 https:// , qianapp:// 开头`跳转场景:**贵方H5 -> 腾讯电子签H5 -> 贵方H5** : JumpUrl格式: https://YOUR_CUSTOM_URL/xxxx,只需满足 https:// 开头的正确且合规的网址即可。**贵方原生App -> 腾讯电子签H5 -> 贵方原生App** : JumpUrl格式: qianapp://YOUR_CUSTOM_URL,只需满足 qianapp:// 开头的URL即可。`APP实现方,需要拦截Webview地址跳转,发现url是qianapp:// 开头时跳转到原生页面。`APP拦截地址跳转可参考:Android,IOS 成功结果返回:若贵方需要在跳转回时通过链接query参数提示开通成功,JumpUrl中的query应携带如下参数:`appendResult=qian`。这样腾讯电子签H5会在跳转回的url后面会添加query参数提示贵方签署成功,例如:qianapp://YOUR_CUSTOM_URL?action=sign&result=success&from=tencent_ess */
JumpUrl?: string;
}
/** 基础流程信息 */
declare interface BaseFlowInfo {
/** 合同流程的名称(可自定义此名称),长度不能超过200,只能由中文、字母、数字和下划线组成。 */
FlowName: string;
/** 合同流程的签署截止时间,格式为Unix标准时间戳(秒),如果在签署截止时间前未完成签署,则合同状态会变为已过期,导致合同作废。 */
Deadline: number;
/** 合同流程的类别分类(可自定义名称,如销售合同/入职合同等),最大长度为200个字符,仅限中文、字母、数字和下划线组成。 */
FlowType?: string;
/** 合同流程描述信息(可自定义此描述),最大长度1000个字符。 */
FlowDescription?: string;
/** 合同流程的签署顺序类型:**false**:(默认)有序签署, 本合同多个参与人需要依次签署**true**:无序签署, 本合同多个参与人没有先后签署限制 */
Unordered?: boolean;
/** 是否打开智能添加填写区(默认开启,打开:"OPEN" 关闭:"CLOSE") */
IntelligentStatus?: string;
/** 填写控件内容, 填写的控制的ID-填写的内容对列表 */
FormFields?: FormField[];
/** 发起方企业的签署人进行签署操作前,是否需要企业内部走审批流程,取值如下: **false**:(默认)不需要审批,直接签署。 **true**:需要走审批流程。当到对应参与人签署时,会阻塞其签署操作,等待企业内部审批完成。企业可以通过CreateFlowSignReview审批接口通知腾讯电子签平台企业内部审批结果 如果企业通知腾讯电子签平台审核通过,签署方可继续签署动作。 如果企业通知腾讯电子签平台审核未通过,平台将继续阻塞签署方的签署动作,直到企业通知平台审核通过。注:`此功能可用于与企业内部的审批流程进行关联,支持手动、静默签署合同` */
NeedSignReview?: boolean;
/** 调用方自定义的个性化字段(可自定义此名称),并以base64方式编码,支持的最大数据大小为1000长度。在合同状态变更的回调信息等场景中,该字段的信息将原封不动地透传给贵方。回调的相关说明可参考开发者中心的回调通知模块。 */
UserData?: string;
/** 合同流程的抄送人列表,最多可支持50个抄送人,抄送人可查看合同内容及签署进度,但无需参与合同签署。注1. 抄送人名单中可以包括自然人以及本企业的员工(本企业员工必须已经完成认证并加入企业)。2. 请确保抄送人列表中的成员不与任何签署人重复。 */
CcInfos?: CcInfo[];
/** 发起方企业的签署人进行发起操作是否需要企业内部审批。使用此功能需要发起方企业有参与签署。若设置为true,发起审核结果需通过接口 [提交企业签署流程审批结果](https://qian.tencent.com/developers/partnerApis/operateFlows/ChannelCreateFlowSignReview)通知电子签,审核通过后,发起方企业签署人方可进行发起操作,否则会阻塞其发起操作。 */
NeedCreateReview?: boolean;
/** 填写控件:文件发起使用 */
Components?: Component[];
/** 在短信通知、填写、签署流程中,若标题、按钮、合同详情等地方存在“合同”字样时,可根据此配置指定文案,可选文案如下: 0 :合同(默认值) 1 :文件 2 :协议 3 :文书效果如下: */
FlowDisplayType?: number;
/** 签署文件资源Id列表,目前仅支持单个文件 */
FileIds?: string[];
/** 合同签署人信息 */
Approvers?: CommonFlowApprover[];
}
/** 批量认证企业任务详情信息,其中包括 TaskId,状态信息等 */
declare interface BatchOrganizationRegistrationTasksDetails {
/** 生成注册链接的任务Id */
TaskId?: string;
/** 批量创建企业任务的状态ProcessingCreateSubmitAuthorizationFailed各个状态所代表的含义如下表格所示:任务状态名称任务状态详情Processing企业认证任务处理中,用户调用了CreateBatchOrganizationRegistrationTasks接口,但是任务还在处理中的状态Create创建企业认证链接任务完成,可以调用生成任务链接接口Submit企业认证任务已提交,到如下界面之后,会变为这个状态Authorization企业认证任务认证成功,点击下图下一步,进入到授权书上传或者法人认证,则会变为这个状态Failed企业认证任务失败 */
Status?: string;
/** 如果任务失败,会返回错误信息 */
ErrorMessage?: string;
}
/** 撤销失败的流程信息 */
declare interface CancelFailureFlow {
/** 签署流程编号,为32位字符串 */
FlowId?: string;
/** 撤销失败原因 */
Reason?: string;
}
/** 抄送信息 */
declare interface CcInfo {
/** 被抄送方手机号码, 支持国内手机号11位数字(无需加+86前缀或其他字符)。请确认手机号所有方为此业务通知方。 */
Mobile?: string;
/** 被抄送方姓名。抄送方的姓名将用于身份认证,请确保填写的姓名为抄送方的真实姓名,而非昵称等代名。 */
Name?: string;
/** 被抄送方类型, 可设置以下类型: **0** :个人抄送方 **1** :企业员工抄送方 */
CcType?: number;
/** 被抄送方权限, 可设置如下权限: **0** :可查看合同内容 **1** :可查看合同内容也可下载原文 */
CcPermission?: number;
}
/** 动态签署2.0合同参与人信息 */
declare interface ChannelArchiveDynamicApproverData {
/** 签署方唯一编号,一个全局唯一的标识符,不同的流程不会出现冲突。 可以使用签署方的唯一编号来生成签署链接(也可以通过RecipientId来生成签署链接)。 */
SignId?: string;
/** 签署方角色编号,签署方角色编号是用于区分同一个流程中不同签署方的唯一标识。不同的流程会出现同样的签署方角色编号。 填写控件和签署控件都与特定的角色编号关联。 */
RecipientId?: string;
}
/** 用户计费使用情况详情 */
declare interface ChannelBillUsageDetail {
/** 合同流程ID,为32位字符串。 */
FlowId?: string;
/** 合同经办人名称如果有多个经办人用分号隔开。 */
OperatorName?: string;
/** 发起方组织机构名称 */
CreateOrganizationName?: string;
/** 合同流程的名称。 */
FlowName?: string;
/** 合同流程当前的签署状态, 会存在下列的状态值**INIT**: 合同创建**PART**: 合同签署中(至少有一个签署方已经签署)**REJECT**: 合同拒签**ALL**: 合同签署完成**DEADLINE**: 合同流签(合同过期)**CANCEL**: 合同撤回**RELIEVED**: 解除协议(已解除)**WILLEXPIRE**: 合同即将过期**EXCEPTION**: 合同异常 */
FlowStatus?: string;
/** 查询的套餐类型对应关系如下:**CloudEnterprise**: 企业版合同**SingleSignature**: 单方签章**CloudProve**: 签署报告**CloudOnlineSign**: 腾讯会议在线签约**ChannelWeCard**: 微工卡**SignFlow**: 合同套餐**SignFace**: 签署意愿(人脸识别)**SignPassword**: 签署意愿(密码)**SignSMS**: 签署意愿(短信)**PersonalEssAuth**: 签署人实名(腾讯电子签认证)**PersonalThirdAuth**: 签署人实名(信任第三方认证)**OrgEssAuth**: 签署企业实名**FlowNotify**: 短信通知**AuthService**: 企业工商信息查询 */
QuotaType?: string;
/** 合同使用量注: `如果消耗类型是撤销返还,此值为负值代表返还的合同数量` */
UseCount?: number;
/** 消耗的时间戳,格式为Unix标准时间戳(秒)。 */
CostTime?: number;
/** 消耗的套餐名称 */
QuotaName?: string;
/** 消耗类型**1**.扣费 **2**.撤销返还 */
CostType?: number;
/** 备注 */
Remark?: string;
}
/** 渠道企业信息 */
declare interface ChannelOrganizationInfo {
/** 电子签平台给企业分配的ID(在不同应用下同一个企业会分配通用的ID) */
OrganizationId?: string;
/** 第三方平台子客企业的唯一标识 */
OrganizationOpenId?: string;
/** 第三方平台子客企业名称 */
OrganizationName?: string;
/** 企业的统一社会信用代码 */
UnifiedSocialCreditCode?: string;
/** 企业法定代表人的姓名 */
LegalName?: string;
/** 企业法定代表人作为第三方平台子客企业员工的唯一标识 */
LegalOpenId?: string;
/** 企业超级管理员的姓名 */
AdminName?: string;
/** 企业超级管理员作为第三方平台子客企业员工的唯一标识 */
AdminOpenId?: string;
/** 企业超级管理员的手机号码**注**:`手机号码脱敏(隐藏部分用*替代)` */
AdminMobile?: string;
/** 企业认证状态字段。值如下: **"UNVERIFIED"**: 未认证的企业 **"VERIFYINGLEGALPENDINGAUTHORIZATION"**: 认证中待法人授权的企业 **"VERIFYINGAUTHORIZATIONFILEPENDING"**: 认证中授权书审核中的企业 **"VERIFYINGAUTHORIZATIONFILEREJECT"**: 认证中授权书已驳回的企业 **"VERIFYING"**: 认证中的企业 **"VERIFIED"**: 已认证的企业 */
AuthorizationStatus?: string;
/** 企业认证方式字段。值如下: **"AuthorizationInit"**: 暂未选择授权方式 **"AuthorizationFile"**: 授权书 **"AuthorizationLegalPerson"**: 法人授权超管 **"AuthorizationLegalIdentity"**: 法人直接认证 */
AuthorizationType?: string;
/** 子企业激活状态。值如下: **0**: 未激活 **1**: 已激活 */
ActiveStatus?: number;
/** 账号到期时间,时间戳 */
LicenseExpireTime?: number;
}
/** 角色信息 */
declare interface ChannelRole {
/** 角色ID,为32位字符串 */
RoleId?: string;
/** 角色的名称 */
RoleName?: string;
/** 此角色状态1: 已经启用2: 已经禁用 */
RoleStatus?: number;
/** 此角色对应的权限列表 */
PermissionGroups?: PermissionGroup[];
}
/** 签署人配置信息。此参数对子客和自动签无效,不允许进行修改。 */
declare interface CommonApproverOption {
/** 是否允许修改签署人信息 */
CanEditApprover?: boolean;
/** 是否可以拒签 默认false-可以拒签 true-不可以拒签 */
NoRefuse?: boolean;
/** 是否可以转发 默认false-可以转发 true-不可以转发 */
NoTransfer?: boolean;
/** 当签署方有多个签署区时候,是否隐藏一键所有的签署区false:(默认)不隐藏true:隐藏,每个签署区要单独选择印章或者签名 */
HideOneKeySign?: boolean;
/** 签署人阅读合同限制参数 取值: LimitReadTimeAndBottom,阅读合同必须限制阅读时长并且必须阅读到底 LimitReadTime,阅读合同仅限制阅读时长 LimitBottom,阅读合同仅限制必须阅读到底 NoReadTimeAndBottom,阅读合同不限制阅读时长且不限制阅读到底(白名单功能,请联系客户经理开白使用) */
FlowReadLimit?: string;
/** 禁止在签署过程中添加签署日期控件 前置条件:文件发起合同时,指定SignBeanTag=1(可以在签署过程中添加签署控件): 默认值:false,在开启:签署过程中添加签署控件时,添加签署控件会默认自带签署日期控件 可选值:true,在开启:签署过程中添加签署控件时,添加签署控件不会自带签署日期控件 */
ForbidAddSignDate?: boolean;
}
/** 通用签署人信息 */
declare interface CommonFlowApprover {
/** 指定签署人非第三方平台子客企业下员工还是SaaS平台企业,在ApproverType为ORGANIZATION时指定。false: 默认值,第三方平台子客企业下员工true: SaaS平台企业下的员工 */
NotChannelOrganization: boolean;
/** 在指定签署方时,可选择企业B端或个人C端等不同的参与者类型,可选类型如下: **0** :企业/企业员工(企业签署方或模板发起时的企业静默签) **1** :个人/自然人**3** :企业/企业员工自动签(他方企业自动签署或文件发起时的本方企业自动签)注:类型为3(企业/企业员工自动签)时,此接口会默认完成该签署方的签署。静默签署仅进行盖章操作,不能自动签名。使用自动签时,请确保企业已经开通自动签功能,开通方式:控制台 -> 企业设置 -> 扩展服务 -> 企业自动签。使用文件发起自动签时使用前请联系对接的客户经理沟通。 */
ApproverType?: number;
/** 电子签平台给企业生成的企业id */
OrganizationId?: string;
/** 企业OpenId,第三方应用集成非静默签子客企业签署人发起合同必传 */
OrganizationOpenId?: string;
/** 企业名称,第三方应用集成非静默签子客企业签署人必传,saas企业签署人必传 */
OrganizationName?: string;
/** 电子签平台给企业员工或者自热人生成的用户id */
UserId?: string;
/** 第三方平台子客企业员工的唯一标识 */
OpenId?: string;
/** 签署方经办人的姓名。经办人的姓名将用于身份认证和电子签名,请确保填写的姓名为签署方的真实姓名,而非昵称等代名。 */
ApproverName?: string;
/** 签署人手机号,saas企业签署人,个人签署人必传 */
ApproverMobile?: string;
/** 签署方经办人的证件类型,支持以下类型ID_CARD : 中国大陆居民身份证 (默认值)HONGKONG_AND_MACAO : 中国港澳居民来往内地通行证HONGKONG_MACAO_AND_TAIWAN : 中国港澳台居民居住证(格式同中国大陆居民身份证)OTHER_CARD_TYPE : 其他证件注: `其他证件类型为白名单功能,使用前请联系对接的客户经理沟通。` */
ApproverIdCardType?: string;
/** 签署方经办人的证件号码,应符合以下规则中国大陆居民身份证号码应为18位字符串,由数字和大写字母X组成(如存在X,请大写)。中国港澳居民来往内地通行证号码共11位。第1位为字母,“H”字头签发给中国香港居民,“M”字头签发给中国澳门居民;第2位至第11位为数字。中国港澳台居民居住证号码编码规则与中国大陆身份证相同,应为18位字符串。 */
ApproverIdCardNumber?: string;
/** 签署人Id,使用模板发起是,对应模板配置中的签署人RecipientId注意:模板发起时该字段必填 */
RecipientId?: string;
/** 签署前置条件:阅读时长限制,不传默认10s,最大300s,最小3s */
PreReadTime?: number;
/** 签署前置条件:阅读全文限制 */
IsFullText?: boolean;
/** 通知签署方经办人的方式, 有以下途径: **SMS** :(默认)短信 **NONE** : 不通知注: `签署方为第三方子客企业时会被置为NONE, 不会发短信通知` */
NotifyType?: string;
/** 签署人配置,用于控制签署人相关属性 */
ApproverOption?: CommonApproverOption;
/** 使用PDF文件直接发起合同时,签署人指定的签署控件;使用模板发起合同时,指定本企业印章签署控件的印章ID: 通过ComponentId或ComponenetName指定签署控件,ComponentValue为印章ID。 */
SignComponents?: Component[];
/** 指定个人签署方查看合同的校验方式,可以传值如下: **1** : (默认)人脸识别,人脸识别后才能合同内容 **2** : 手机号验证, 用户手机号和参与方手机号(ApproverMobile)相同即可查看合同内容(当手写签名方式为OCR_ESIGN时,该校验方式无效,因为这种签名方式依赖实名认证)注: 如果合同流程设置ApproverVerifyType查看合同的校验方式, 则忽略此签署人的查看合同的校验方式此字段可传多个校验方式 */
ApproverVerifyTypes?: number[];
/** 签署人签署合同时的认证方式 **1** :人脸认证 **2** :签署密码 **3** :运营商三要素 **5** :设备指纹识别 **6** :设备面容识别默认为1(人脸认证 ),2(签署密码),3(运营商三要素),5(设备指纹识别),6(设备面容识别)注: 1. 用模板创建合同场景, 签署人的认证方式需要在配置模板的时候指定, 在创建合同重新指定无效2. 运营商三要素认证方式对手机号运营商及前缀有限制,可以参考[运营商支持列表类](https://qian.tencent.com/developers/partner/mobile_support)得到具体的支持说明3. 校验方式不允许只包含设备指纹识别和设备面容识别,至少需要再增加一种其他校验方式。4. 设备指纹识别和设备面容识别只支持小程序使用,其他端暂不支持。 */
ApproverSignTypes?: number[];
}
/** 此结构体 (Component) 用于描述控件属性。在通过文件发起合同时,对应的component有三种定位方式1. 绝对定位方式 (可以通过 [PDF坐标计算助手](https://qian.tencent.com/developers/tools/template-editor)计算控件的坐标)2. 表单域(FIELD)定位方式3. 关键字(KEYWORD)定位方式,使用关键字定位时,请确保PDF原始文件内是关键字以文字形式保存在PDF文件中,不支持对图片内文字进行关键字查找 */
declare interface Component {
/** 控件唯一ID。**在绝对定位方式方式下**,ComponentId为控件的ID,长度不能超过30,只能由中文、字母、数字和下划线组成,可以在后续的操作中使用该名称来引用控件。**在关键字定位方式下**,ComponentId不仅为控件的ID,也是关键字整词。此方式下可以通过"^"来决定是否使用关键字整词匹配能力。例:- 如传入的关键字"^甲方签署^"</font >,则会在PDF文件中有且仅有"甲方签署"关键字的地方(前后不能有其他字符</font >)进行对应操作。- 如传入的关键字为"甲方签署</font >",则PDF文件中每个出现关键字的位置(前后可以有其他字符</font >)都会执行相应操作。注:`控件ID可以在一个PDF中不可重复`点击查看ComponentId在模板页面的位置 */
ComponentId?: string;
/** **如果是Component填写控件类型,则可选的字段为**: TEXT : 普通文本控件,输入文本字符串; MULTI_LINE_TEXT : 多行文本控件,输入文本字符串; CHECK_BOX : 勾选框控件,若选中填写ComponentValue 填写 true或者 false 字符串; FILL_IMAGE : 图片控件,ComponentValue 填写图片的资源 ID; DYNAMIC_TABLE : 动态表格控件; ATTACHMENT : 附件控件,ComponentValue 填写附件图片的资源 ID列表,以逗号分隔; SELECTOR : 选择器控件,ComponentValue填写选择的字符串内容; DATE : 日期控件;默认是格式化为xxxx年xx月xx日字符串; DISTRICT : 省市区行政区控件,ComponentValue填写省市区行政区字符串内容;**如果是SignComponent签署控件类型,需要根据签署人的类型可选的字段为*** 企业方 SIGN_SEAL : 签署印章控件; SIGN_DATE : 签署日期控件; SIGN_SIGNATURE : 用户签名控件; SIGN_PAGING_SIGNATURE : 用户签名骑缝章控件;若文件发起,需要对应填充ComponentPosY、ComponentWidth、ComponentHeight SIGN_PAGING_SEAL : 骑缝章;若文件发起,需要对应填充ComponentPosY、ComponentWidth、ComponentHeight SIGN_OPINION : 签署意见控件,用户需要根据配置的签署意见内容,完成对意见内容的确认; SIGN_VIRTUAL_COMBINATION : 签批控件。内部最多组合4个特定控件(SIGN_SIGNATURE,SIGN_DATA,SIGN_MULTI_LINE_TEXT,SIGN_SELECTOR),本身不填充任何文字内容 SIGN_MULTI_LINE_TEXT : 多行文本,仅可用在签批控件内部作为组合控件,单独无法使用,常用作批注附言 SIGN_SELECTOR : 选择器,仅可用在签批控件内部作为组合控件,单独无法使用,常用作审批意见的选择 SIGN_LEGAL_PERSON_SEAL : 企业法定代表人控件。* 个人方 SIGN_DATE : 签署日期控件; SIGN_SIGNATURE : 用户签名控件; SIGN_PAGING_SIGNATURE : 用户签名骑缝章控件; SIGN_OPINION : 签署意见控件,用户需要根据配置的签署意见内容,完成对意见内容的确认; SIGN_VIRTUAL_COMBINATION : 签批控件。内部包含最多4个特定控件(SIGN_SIGNATURE,SIGN_DATA,SIGN_MULTI_LINE_TEXT,SIGN_SELECTOR),本身不填充任何文字内容 SIGN_MULTI_LINE_TEXT : 多行文本,仅可用在签批控件内部作为组合控件,单独无法使用,常用作批注附言 SIGN_SELECTOR : 选择器,仅可用在签批控件内部作为组合控件,单独无法使用,常用作审批意见的选择 注:` 表单域的控件不能作为印章和签名控件` */
ComponentType?: string;
/** **在绝对定位方式方式下**,ComponentName为控件名,长度不能超过20,只能由中文、字母、数字和下划线组成,可以在后续的操作中使用该名称来引用控件。**在表单域定位方式下**,ComponentName不仅为控件名,也是表单域名称。注:`控件名可以在一个PDF中可以重复`点击查看ComponentName在模板页面的位置 */
ComponentName?: string;
/** 如果是填写控件,ComponentRequired表示在填写页面此控件是否必填false(默认):可以不填写true :必须填写此填写控件如果是签署控件,签批控件中签署意见等可以不填写, 其他签署控件不受此字段影响 */
ComponentRequired?: boolean;
/** **在通过接口拉取控件信息场景下**,为出参参数,此控件归属的参与方的角色ID角色(即RecipientId),**发起合同时候不要填写此字段留空即可** */
ComponentRecipientId?: string;
/** 【暂未使用】控件所属文件的序号(取值为:0-N)。 目前单文件的情况下,值一直为0 */
FileIndex?: number;
/** 控件生成的方式: NORMAL : 绝对定位控件 FIELD : 表单域 KEYWORD : 关键字(设置关键字时,请确保PDF原始文件内是关键字以文字形式保存在PDF文件中,不支持对图片内文字进行关键字查找) */
GenerateMode?: string;
/** **在绝对定位方式和关键字定位方式下**,指定控件宽度,控件宽度是指控件在PDF文件中的宽度,单位为pt(点)。 */
ComponentWidth?: number;
/** **在绝对定位方式和关键字定位方式下**,指定控件的高度, 控件高度是指控件在PDF文件中的高度,单位为pt(点)。 */
ComponentHeight?: number;
/** **在绝对定位方式方式下**,指定控件所在PDF文件上的页码**在使用文件发起的情况下**,绝对定位方式的填写控件和签署控件支持使用负数来指定控件在PDF文件上的页码,使用负数时,页码从最后一页开始。例如:ComponentPage设置为-1,即代表在PDF文件的最后一页,以此类推。注:1. 页码编号是从1开始编号的。2. 页面编号不能超过PDF文件的页码总数。如果指定的页码超过了PDF文件的页码总数,在填写和签署时会出现错误,导致无法正常进行操作。 */
ComponentPage?: number;
/** **在绝对定位方式下**,可以指定控件横向位置的位置,单位为pt(点)。 */
ComponentPosX?: number;
/** **在绝对定位方式下**,可以指定控件纵向位置的位置,单位为pt(点)。 */
ComponentPosY?: number;
/** **在所有的定位方式下**,控件的扩展参数,为JSON格式,不同类型的控件会有部分非通用参数。ComponentType为TEXT、MULTI_LINE_TEXT时,支持以下参数: Font:目前只支持黑体、宋体、仿宋 FontSize: 范围6 :72 FontAlign: Left/Right/Center,左对齐/居中/右对齐 FontColor:字符串类型,格式为RGB颜色数字参数样例:`{"FontColor":"255,0,0","FontSize":12}`ComponentType为DATE时,支持以下参数: Font:目前只支持黑体、宋体、仿宋 FontSize: 范围6 :72参数样例:`{"FontColor":"255,0,0","FontSize":12}`ComponentType为WATERMARK时,支持以下参数: Font:目前只支持黑体、宋体、仿宋 FontSize: 范围6 :72 Opacity: 透明度,范围0 :1 Rotate: 水印旋转角度,范围0 :359 Density: 水印样式,1-宽松,2-标准(默认值),3-密集, Position: 水印位置,None-平铺(默认值),LeftTop-左上,LeftBottom-左下,RightTop-右上,RightBottom-右下,Center-居中 SubType: 水印类型:CUSTOM_WATERMARK-自定义内容,PERSON_INFO_WATERMARK-访问者信息参数样例:`"{\"Font\":\"黑体\",\"FontSize\":20,\"Opacity\":0.1,\"Density\":2,\"SubType\":\"PERSON_INFO_WATERMARK\"}"`ComponentType为FILL_IMAGE时,支持以下参数: NotMakeImageCenter:bool。是否设置图片居中。false:居中(默认)。 true : 不居中 FillMethod : int. 填充方式。0-铺满(默认);1-等比例缩放ComponentType为SELECTOR时,支持以下参数: WordWrap:bool。是否支持选择控件内容自动折行合成。false:不支持(默认)。 true : 支持自动折行合成ComponentType为SIGN_SIGNATURE、SIGN_PAGING_SIGNATURE类型时,可以**ComponentTypeLimit**参数控制签署方式 HANDWRITE : 需要实时手写的手写签名 HANDWRITTEN_ESIGN : 长效手写签名, 是使用保存到个人中心的印章列表的手写签名(并且包含HANDWRITE) OCR_ESIGN : AI智能识别手写签名 ESIGN : 个人印章类型 SYSTEM_ESIGN : 系统签名(该类型可以在用户签署时根据用户姓名一键生成一个签名来进行签署) IMG_ESIGN : 图片印章(该类型支持用户在签署将上传的PNG格式的图片作为签名)参考样例:`{"ComponentTypeLimit": ["SYSTEM_ESIGN"]}`印章的对应关系参考下图ComponentType为SIGN_SEAL 或者 SIGN_PAGING_SEAL类型时,可以通过**ComponentTypeLimit**参数控制签署方签署时要使用的印章类型,支持指定以下印章类型 OFFICIAL : 企业公章 CONTRACT : 合同专用章 FINANCE : 财务专用章 PERSONNEL : 人事专用章 OTHER : 其他参考样例:`{\"ComponentTypeLimit\":[\"PERSONNEL\",\"FINANCE\"]}` 表示改印章签署区,客户需使用人事专用章或财务专用章盖章签署。ComponentType为SIGN_DATE时,支持以下参数: Font :字符串类型目前只支持"黑体"、"宋体"、仿宋,如果不填默认为"黑体" FontSize : 数字类型,范围6-72,默认值为12 FontAlign : 字符串类型,可取Left/Right/Center,对应左对齐/居中/右对齐 Format : 字符串类型,日期格式,必须是以下五种之一 “yyyy m d”,”yyyy年m月d日”,”yyyy/m/d”,”yyyy-m-d”,”yyyy.m.d”。 Gaps : 字符串类型,仅在Format为“yyyy m d”时起作用,格式为用逗号分开的两个整数,例如”2,2”,两个数字分别是日期格式的前后两个空隙中的空格个数如果extra参数为空,默认为”yyyy年m月d日”格式的居中日期特别地,如果extra中Format字段为空或无法被识别,则extra参数会被当作默认值处理(Font,FontSize,Gaps和FontAlign都不会起效)参数样例: ` "{"Format":"yyyy m d","FontSize":12,"Gaps":"2,2", "FontAlign":"Right"}"`ComponentType为SIGN_SEAL、SIGN_SIGNATURE类型时,支持以下参数: PageRanges :PageRange的数组,通过PageRanges属性设置该印章在PDF所有页面上盖章(适用于标书在所有页面盖章的情况)参数样例:` "{"PageRanges":[{"BeginPage":1,"EndPage":-1}]}"`签署印章旋转功能,当ComponentType为SIGN_SIGNATURE、SIGN_DATE、SIGN_SEAL时,可以通过以下参数设置签署图片的旋转角度: Rotate:旋转角度,支持范围:-360:360,为正整数时,为顺时针旋转;为负整数时,为逆时针旋转。 RotateRelation:旋转关联控件,用于指定关联旋转的控件。例如:让印章控件和签署日期控件按照印章控件为中心旋转(此时,设置印章控件的RotateRelation为日期控件的ComponentId,设置日期签署控件的RotateRelation为印章控件的ComponentId)。参数样例:`{"Rotate":-30,"RotateRelation":"Component_Id1"}`签署印章透明度功能设置,当ComponentType为SIGN_SIGNATURE、SIGN_SEAL、SIGN_PAGING_SEAL、SIGN_LEGAL_PERSON_SEAL时,可以通过以下参数设置签署印章的透明度: Opacity:印章透明度,支持范围:0-1,0.7表示70%的透明度,1表示无透明度参数样例:`{"Opacity":0.7}`签署印章大小功能设置,当ComponentType为SIGN_SEAL、SIGN_PAGING_SEAL、SIGN_LEGAL_PERSON_SEAL时,可以通过以下参数设置签署时按照实际印章的大小进行签署,如果印章没有设置大小,那么默认会是4.2cm的印章大小: UseSealSize:使用印章设置的大小盖章,true表示使用印章设置的大小盖章,false表示使用签署控件的大小进行盖章;不传则为false参数样例:`{"UseSealSize":true}`关键字模式下支持关键字找不到的情况下不进行报错的设置 IgnoreKeywordError :1-关键字查找不到时不进行报错场景说明:如果使用关键字进行定位,但是指定的PDF文件中又没有设置的关键字时,发起合同会进行关键字是否存在的校验,如果关键字不存在,会进行报错返回。如果不希望进行报错,可以设置"IgnoreKeywordError"来忽略错误。请注意,如果关键字签署控件对应的签署方在整个PDF文件中一个签署控件都没有,还是会触发报错逻辑。参数样例:` "{"IgnoreKeywordError":1}"`ComponentType为SIGN_VIRTUAL_COMBINATION时,支持以下参数:Children: 绝对定位模式下,用来指定此签批控件的组合子控件 参数样例:`{"Children":["ComponentId_29","ComponentId_27","ComponentId_28","ComponentId_30"]}`ChildrenComponents: 关键字定位模式下,用来指定此签批控件的组合子控件 ChildrenComponent结构体定义: 字段名称 类型 描述 ComponentType string 子控件类型-可选值:SIGN_SIGNATURE,SIGN_DATE,SIGN_SELECTOR,SIGN_MULTI_LINE_TEXT ComponentName string 子控件名称 Placeholder string 子控件提示语 ComponentOffsetX float 控件偏移位置X(相对于父控件(签批控件的ComponentX)) ComponentOffsetY float 控件偏移位置Y 相对于父控件(签批控件的ComponentY)) ComponentWidth float 控件宽 ComponentHeight float 控件高 ComponentExtra string 控件的附属信息,根据ComponentType设置 参数样例:{ "ChildrenComponents": [ { "ComponentType": "SIGN_SIGNATURE", "ComponentName": "个人签名", "Placeholder": "请签名", "ComponentOffsetX": 10, "ComponentOffsetY": 30, "ComponentWidth": 119, "ComponentHeight": 43, "ComponentExtra": "{\"ComponentTypeLimit\":[\"SYSTEM_ESIGN\"]}" }, { "ComponentType": "SIGN_SELECTOR", "ComponentName": "是否同意此协议", "Placeholder": "", "ComponentOffsetX": 50, "ComponentOffsetY": 130, "ComponentWidth": 120, "ComponentHeight": 43, "ComponentExtra": "{\"Values\":[\"同意\",\"不同意\",\"再想想\"],\"FontSize\":12,\"FontAlign\":\"Left\",\"Font\":\"黑体\",\"MultiSelect\":false}" }, { "ComponentType": "SIGN_MULTI_LINE_TEXT", "ComponentName": "批注附言", "Placeholder": "", "ComponentOffsetX": 150, "ComponentOffsetY": 300, "ComponentWidth": 200, "ComponentHeight": 86, "ComponentExtra": "" } ]} */
ComponentExtra?: string;
/** 控件填充vaule,ComponentType和传入值类型对应关系: TEXT : 文本内容 MULTI_LINE_TEXT : 文本内容, 可以用 \n 来控制换行位置 CHECK_BOX : true/false FILL_IMAGE、ATTACHMENT : 附件的FileId,需要通过UploadFiles接口上传获取 SELECTOR : 选项值 DYNAMIC_TABLE - 传入json格式的表格内容,详见说明:[数据表格](https://qian.tencent.com/developers/company/dynamic_table) DATE : 格式化:xxxx年xx月xx日(例如:2024年05月28日) SIGN_SEAL : 印章ID,于控制台查询获取,[点击查看在控制上的位置](https://qcloudimg.tencent-cloud.cn/raw/cd403a5b949fce197fd9e88bb6db1517.png) SIGN_PAGING_SEAL : 可以指定印章ID,于控制台查询获取,[点击查看在控制上的位置](https://qcloudimg.tencent-cloud.cn/raw/cd403a5b949fce197fd9e88bb6db1517.png)控件值约束说明: 特殊控件 填写约束 企业全称控件 企业名称中文字符中文括号 统一社会信用代码控件 企业注册的统一社会信用代码 法人名称控件 最大50个字符,2到25个汉字或者1到50个字母 签署意见控件 签署意见最大长度为50字符 签署人手机号控件 国内手机号 13,14,15,16,17,18,19号段长度11位 签署人身份证控件 合法的身份证号码检查 控件名称 控件名称最大长度为20字符,不支持表情 单行文本控件 只允许输入中文,英文,数字,中英文标点符号,不支持表情 多行文本控件 只允许输入中文,英文,数字,中英文标点符号,不支持表情 勾选框控件 选择填字符串true,不选填字符串false 选择器控件 同单行文本控件约束,填写选择值中的字符串 数字控件 请输入有效的数字(可带小数点) 日期控件 格式:yyyy年mm月dd日 附件控件 JPG或PNG图片,上传数量限制,1到6个,最大6个附件,填写上传的资源ID 图片控件 JPG或PNG图片,填写上传的图片资源ID 邮箱控件 有效的邮箱地址, w3c标准 地址控件 只允许输入中文,英文,数字,中英文标点符号,不支持表情 省市区控件 只允许输入中文,英文,数字,中英文标点符号,不支持表情 性别控件 选择值中的字符串 学历控件 选择值中的字符串 水印控件 水印控件设置为CUSTOM_WATERMARK类型时的水印内容 注: `部分特殊控件需要在控制台配置模板形式创建` */
ComponentValue?: string;
/** 【暂未使用】日期签署控件的字号,默认为 12 */
ComponentDateFontSize?: number;
/** 【暂未使用】控件归属的文档的ID, **发起合同时候不要填写此字段留空即可** */
DocumentId?: string;
/** 【暂未使用】控件描述,用户自定义,不影响合同发起流程 */
ComponentDescription?: string;
/** **如果控件是关键字定位方式**,可以对关键字定位出来的区域进行横坐标方向的调整,单位为pt(点)。例如,如果关键字定位出来的区域偏左或偏右,可以通过调整横坐标方向的参数来使控件位置更加准确。注意: `向左调整设置为负数, 向右调整设置成正数` */
OffsetX?: number;
/** **如果控件是关键字定位方式**,可以对关键字定位出来的区域进行纵坐标方向的调整,单位为pt(点)。例如,如果关键字定位出来的区域偏上或偏下,可以通过调整纵坐标方向的参数来使控件位置更加准确。注意: `向上调整设置为负数, 向下调整设置成正数` */
OffsetY?: number;
/** 【暂未使用】第三方应用集成平台模板控件 ID 标识 */
ChannelComponentId?: string;
/** **如果控件是关键字定位方式**,指定关键字排序规则时,可以选择Positive或Reverse两种排序方式。 Positive :表示正序,即根据关键字在PDF文件内的顺序进行排列 Reverse :表示倒序,即根据关键字在PDF文件内的反序进行排列在指定KeywordIndexes时,如果使用Positive排序方式,0代表在PDF内查找内容时,查找到的第一个关键字;如果使用Reverse排序方式,0代表在PDF内查找内容时,查找到的最后一个关键字。 */
KeywordOrder?: string;
/** **如果控件是关键字定位方式**,在KeywordPage中指定关键字页码时,将只会在该页码中查找关键字,非该页码的关键字将不会查询出来。如果不设置查找所有页面中的关键字。 */
KeywordPage?: number;
/** **如果控件是关键字定位方式**,关键字生成的区域的对齐方式, 可以设置下面的值 Middle :居中 Below :正下方 Right :正右方 LowerRight :右下角 UpperRight :右上角。示例:如果设置Middle的关键字盖章,则印章的中心会和关键字的中心重合,如果设置Below,则印章在关键字的正下方 */
RelativeLocation?: string;
/** **如果控件是关键字定位方式**,关键字索引是指在PDF文件中存在多个相同的关键字时,通过索引指定使用哪一个关键字作为最后的结果。可以通过指定多个索引来同时使用多个关键字。例如,[0,2]表示使用PDF文件内第1个和第3个关键字位置作为最后的结果。注意:关键字索引是从0开始计数的 */
KeywordIndexes?: number[];
/** 填写控件在腾讯电子签小程序填写界面展示的提示信息,例如,在身份证号码填写控件中,提示信息可以设置成“请输入18位身份证号码”。注:`签署控件设置此字段无效` */
Placeholder?: string;
/** **web嵌入发起合同场景下**, 是否锁定填写和签署控件值不允许嵌入页面进行编辑false(默认):不锁定控件值,允许在页面编辑控件值true:锁定控件值,在页面无法编辑控件值 */
LockComponentValue?: boolean;
/** **web嵌入发起合同场景下**,是否禁止移动和删除填写和签署控件 false(默认) :可以移动和删除控件 true : 禁止移动和删除控件 */
ForbidMoveAndDelete?: boolean;
}
/** 签署控件的类型和范围限制条件,用于控制文件发起后签署人拖拽签署区时可使用的控件类型和具体的印章或签名方式。 */
declare interface ComponentLimit {
/** 控件类型,支持以下类型SIGN_SEAL : 印章控件SIGN_PAGING_SEAL : 骑缝章控件SIGN_LEGAL_PERSON_SEAL : 企业法定代表人控件SIGN_SIGNATURE : 用户签名控件 */
ComponentType: string;
/** 签署控件类型的值(可选),用与限制签署时印章或者签名的选择范围1.当ComponentType 是 SIGN_SEAL 或者 SIGN_PAGING_SEAL 时可传入企业印章Id(支持多个)或者以下印章类型 OFFICIAL : 企业公章 CONTRACT : 合同专用章 FINANCE : 财务专用章 PERSONNEL : 人事专用章 OTHER : 其他注:`限制印章控件或骑缝章控件情况下,仅本企业签署方可以指定具体印章(通过传递ComponentValue,支持多个),他方企业签署人只能限制类型.若同时指定了印章类型和印章Id,以印章Id为主,印章类型会被忽略`2.当ComponentType 是 SIGN_SIGNATURE 时可传入以下类型(支持多个)HANDWRITE : 需要实时手写的手写签名HANDWRITTEN_ESIGN : 长效手写签名, 是使用保存到个人中心的印章列表的手写签名(并且包含HANDWRITE)OCR_ESIGN : OCR印章(智慧手写签名)ESIGN : 个人印章SYSTEM_ESIGN : 系统印章3.当ComponentType 是 SIGN_LEGAL_PERSON_SEAL 时无需传递此参数。 */
ComponentValue?: string[];
}
/** 创建合同个性化参数 */
declare interface CreateFlowOption {
/** 是否允许修改合同信息,**true**:可以**false**:(默认)不可以 */
CanEditFlow?: boolean;
/** 是否允许发起合同弹窗隐藏合同名称**true**:允许**false**:(默认)不允许 */
HideShowFlowName?: boolean;
/** 是否允许发起合同弹窗隐藏合同类型,**true**:允许**false**:(默认)不允许 */
HideShowFlowType?: boolean;
/** 是否允许发起合同弹窗隐藏合同到期时间**true**:允许**false**:(默认)不允许 */
HideShowDeadline?: boolean;
/** 是否允许发起合同步骤跳过指定签署方步骤**true**:允许**false**:(默认)不允许 */
CanSkipAddApprover?: boolean;
/** 是否可以编辑签署人包括新增,修改,删除 (默认) false -可以编辑签署人 true - 禁止编辑签署人注意:* 如果设置参数为 true, 则 参数签署人 [FlowApproverList](https://qian.tencent.com/developers/partnerApis/embedPages/ChannelCreatePrepareFlow) 不能为空* 此参数对子客和自动签无效,不允许进行修改。 */
ForbidEditApprover?: boolean;
/** 定制化发起合同弹窗的描述信息,长度不能超过500,只能由中文、字母、数字和标点组成。 */
CustomCreateFlowDescription?: string;
/** 禁止编辑填写控件**true**:禁止编辑填写控件**false**:(默认)允许编辑填写控件 */
ForbidEditFillComponent?: boolean;
/** 跳过上传文件步骤**true**:跳过**false**:(默认)不跳过,需要传ResourceId */
SkipUploadFile?: boolean;
/** 签署控件的配置信息,用在嵌入式发起的页面配置,包括 - 签署控件 是否默认展示日期. */
SignComponentConfig?: SignComponentConfig;
/** 是否禁止编辑(展示)水印控件属性(默认) false -否 true - 禁止编辑 */
ForbidEditWatermark?: boolean;
}
/** 清理的企业认证流信息 */
declare interface DeleteOrganizationAuthorizationInfo {
/** 认证流 Id 是指在企业认证过程中,当前操作人的认证流程的唯一标识。每个企业在认证过程中只能有一条认证流认证成功。这意味着在同一认证过程内,一个企业只能有一个认证流程处于成功状态,以确保认证的唯一性和有效性。 */
AuthorizationId?: string;
/** 认证的企业名称 */
OrganizationName?: string;
/** 第三方平台子客企业的唯一标识,定义Agent中的ProxyOrganizationOpenId一样, 可以参考Agent结构体 */
OrganizationOpenId?: string;
/** 清除认证流产生的错误信息 */
Errormessage?: string;
}
/** 第三方应用集成员工部门信息 */
declare interface Department {
/** 部门id */
DepartmentId?: string;
/** 部门名称 */
DepartmentName?: string;
}
/** 视频认证结果 */
declare interface DetectInfoVideoData {
/** 活体视频的base64编码,mp4格式注:`需进行base64解码获取活体视频文件` */
LiveNessVideo?: string;
}
/** 签署流程下载信息 */
declare interface DownloadFlowInfo {
/** 文件夹名称 */
FileName: string;
/** 签署流程的标识数组 */
FlowIdList: string[];
}
/** 动态合同签署人结果 */
declare interface DynamicFlowApproverResult {
/** 签署流程签署人在模板中对应的签署人Id;在非单方签署、以及非B2C签署的场景下必传,用于指定当前签署方在签署流程中的位置; */
RecipientId?: string;
/** 签署ID - 发起流程时系统自动补充 - 创建签署链接时,可以通过查询详情接口获得签署人的SignId,然后可传入此值为该签署人创建签署链接,无需再传姓名、手机号、证件号等其他信息 */
SignId?: string;
/** 签署人状态信息 */
ApproverStatus?: number;
}
/** 动态合同信息 */
declare interface DynamicFlowInfo {
/** 合同流程ID,为32位字符串。 - 建议开发者妥善保存此流程ID,以便于顺利进行后续操作。 - 可登录腾讯电子签控制台,在 "合同"->"合同中心" 中查看某个合同的FlowId(在页面中展示为合同ID)。 - 不建议继续使用,请使用补充签署人结构体中的FlowId指定合同 */
FlowId: string;
/** 合同流程的参与方列表, 最多可支持50个参与方,可在列表中指定企业B端签署方和个人C端签署方的联系和认证方式等信息,不同类型的签署方传参方式可以参考文档 [签署方入参指引](https://qian.tencent.com/developers/partner/flow_approver)。 如果合同流程是有序签署,Approvers列表中参与人的顺序就是默认的签署顺序, 请确保列表中参与人的顺序符合实际签署顺序。 */
FlowApprovers: FlowApproverInfo[];
/** 个人自动签名的使用场景包括以下, 个人自动签署(即ApproverType设置成个人自动签署时)业务此值必传: **E_PRESCRIPTION_AUTO_SIGN**:电子处方单(医疗自动签) **OTHER** : 通用场景 注: `个人自动签名场景是白名单功能,使用前请与对接的客户经理联系沟通。` */
AutoSignScene?: string;
/** 签署人校验方式 VerifyCheck: 人脸识别(默认) MobileCheck:手机号验证,用户手机号和参与方手机号(ApproverMobile)相同即可查看合同内容(当手写签名方式为OCR_ESIGN时,该校验方式无效,因为这种签名方式依赖实名认证) 参数说明:可选人脸识别或手机号验证两种方式,若选择后者,未实名个人签署方在签署合同时,无需经过实名认证和意愿确认两次人脸识别,该能力仅适用于个人签署方。 */
ApproverVerifyType?: string;
}
/** 动态合同补充签署人结果 */
declare interface DynamicFlowResult {
/** 合同流程ID,为32位字符串。 建议开发者妥善保存此流程ID,以便于顺利进行后续操作。 [点击查看FlowId在控制台上的位置](https://qcloudimg.tencent-cloud.cn/raw/05af26573d5106763b4cfbb9f7c64b41.png) */
FlowId?: string;
/** 动态合同签署人补充结果信息列表 */
DynamicFlowApproverList?: DynamicFlowApproverResult[];
}
/** 创建嵌入式页面url个性化参数 */
declare interface EmbedUrlOption {
/** 合同详情预览,允许展示控件信息true:允许在合同详情页展示控件false:(默认)不允许在合同详情页展示控件 */
ShowFlowDetailComponent?: boolean;
/** 模板预览,允许展示模板控件信息 true :允许在模板预览页展示控件 false :(默认)不允许在模板预览页展示控件 */
ShowTemplateComponent?: boolean;
/** 跳过上传文件,默认为false(展示上传文件页)- false: 展示上传文件页- true: 不展示上传文件页 注意: 此参数仅针对**EmbedType=CREATE_TEMPLATE(创建模板)有效**, */
SkipUploadFile?: string;
/** 是否禁止编辑(展示)水印控件属性(默认) false -否 true - 禁止编辑 */
ForbidEditWatermark?: boolean;
/** 印章描述 */
SealDescription?: string;
/** 是否禁止编辑印章描述内容(默认) false -否 true - 禁止编辑 */
ForbidEditSealDescription?: boolean;
}
/** 扩展服务开通和授权的详细信息 */
declare interface ExtentServiceAuthInfo {
/** 扩展服务类型AUTO_SIGN 企业自动签(自动签署) OVERSEA_SIGN 企业与港澳台居民签署合同 MOBILE_CHECK_APPROVER 使用手机号验证签署方身份 DOWNLOAD_FLOW 授权渠道下载合同 AGE_LIMIT_EXPANSION 拓宽签署方年龄限制HIDE_OPERATOR_DISPLAY 隐藏合同经办人姓名 */
Type?: string;
/** 扩展服务名称 */
Name?: string;
/** 扩展服务的开通状态**ENABLE**:开通 **DISABLE**:未开通 */
Status?: string;
/** 操作扩展服务的操作人第三方应用平台的用户openid */
OperatorOpenId?: string;
/** 扩展服务的操作时间,格式为Unix标准时间戳(秒)。 */
OperateOn?: number;
}
/** 绑定失败的用户角色信息 */
declare interface FailedCreateRoleData {
/** 用户userId */
UserId?: string;
/** 角色RoleId列表 */
RoleIds?: string[];
}
/** 指定补充签署人信息- RecipientId 必须指定- 补充个人签署方时,若该用户已在电子签完成实名则可通过指定姓名和证件类型、证件号码完成补充 */
declare interface FillApproverInfo {
/** 签署方经办人在模板中配置的参与方ID,与控件绑定,是控件的归属方,ID为32位字符串。 */
RecipientId: string;
/** 指定企业经办签署人OpenId注: `签署人OpenId未实名时,需要传入签署人姓名以及手机号码。` */
OpenId?: string;
/** 签署人姓名 */
ApproverName?: string;
/** 签署人手机号码 */
ApproverMobile?: string;
/** 企业名称 */
OrganizationName?: string;
/** 企业OpenId */
OrganizationOpenId?: string;
/** 签署企业非渠道子客,默认为false,即表示同一渠道下的企业;如果为true,则目前表示接收方企业为SaaS企业, 为渠道子客时,OrganizationOpenId 必传 */
NotChannelOrganization?: boolean;
/** 签署方经办人的证件类型,支持以下类型ID_CARD 中国大陆居民身份证HONGKONG_AND_MACAO 中国港澳居民来往内地通行证HONGKONG_MACAO_AND_TAIWAN 中国港澳台居民居住证(格式同中国大陆居民身份证)OTHER_CARD_TYPE 其他证件注: `1.其他证件类型为白名单功能,使用前请联系对接的客户经理沟通。``2.补充个人签署方时,若该用户已在电子签完成实名则可通过指定姓名和证件类型、证件号码完成补充。` */
ApproverIdCardType?: string;
/** 签署方经办人的证件号码,应符合以下规则中国大陆居民身份证号码应为18位字符串,由数字和大写字母X组成(如存在X,请大写)。中国港澳居民来往内地通行证号码共11位。第1位为字母,“H”字头签发给中国香港居民,“M”字头签发给中国澳门居民;第2位至第11位为数字。中国港澳台居民居住证号码编码规则与中国大陆身份证相同,应为18位字符串。注:`补充个人签署方时,若该用户已在电子签完成实名则可通过指定姓名和证件类型、证件号码完成补充。` */
ApproverIdCardNumber?: string;
/** 合同流程ID- 补充合同组子合同动态签署人时必传。- 补充正常合同,请阅读:补充签署人接口接口使用说明 */
FlowId?: string;
}
/** 批量补充签署人时,补充失败的报错说明 */
declare interface FillError {
/** 为签署方经办人在签署合同中的参与方ID,与控件绑定,是控件的归属方,ID为32位字符串。与入参中补充的签署人角色ID对应,批量补充部分失败返回对应的错误信息。 */
RecipientId?: string;
/** 补充失败错误说明 */
ErrMessage?: string;
/** 合同流程ID,为32位字符串。 */
FlowId?: string;
}
/** 文档内的填充控件返回结构体,返回控件的基本信息和填写内容值 */
declare interface FilledComponent {
/** 填写控件ID */
ComponentId?: string;
/** 控件名称 */
ComponentName?: string;
/** 此填写控件的填写状态 **0** : 此填写控件**未填写****1** : 此填写控件**已填写** */
ComponentFillStatus?: string;
/** 控件填写内容 */
ComponentValue?: string;
/** 图片填充控件下载链接,如果是图片填充控件时,这里返回图片的下载链接。注: `链接不是永久链接, 默认有效期5分钟后, 到期后链接失效` */
ImageUrl?: string;
}
/** 此结构体 (Filter) 用于描述查询过滤条件。 */
declare interface Filter {
/** 查询过滤条件的Key */
Key: string;
/** 查询过滤条件的Value列表 */
Values: string[];
}
/** 签署人的流程信息明细 */
declare interface FlowApproverDetail {
/** 模板配置时候的签署人角色ID(用PDF文件发起也可以指定,如果不指定则自动生成此角色ID), 所有的填写控件和签署控件都归属不同的角色 */
ReceiptId?: string;
/** 第三方平台子客企业的唯一标识,定义Agent中的ProxyOrganizationOpenId一样, 可以参考Agent结构体 */
ProxyOrganizationOpenId?: string;
/** 第三方平台子客企业员工的唯一标识 */
ProxyOperatorOpenId?: string;
/** 第三方平台子客企业名称,与企业营业执照中注册的名称一致。 */
ProxyOrganizationName?: string;
/** 签署人手机号 */
Mobile?: string;
/** 签署顺序,如果是有序签署,签署顺序从小到大 */
SignOrder?: number;
/** 签署方经办人的姓名。经办人的姓名将用于身份认证和电子签名,请确保填写的姓名为签署方的真实姓名,而非昵称等代名。 */
ApproveName?: string;
/** 当前签署人的状态, 状态如下 **PENDING** :待签署 **FILLPENDING** :待填写 **FILLACCEPT** :填写完成 **FILLREJECT** :拒绝填写 **WAITPICKUP** :待领取 **ACCEPT** :已签署 **REJECT** :拒签 **DEADLINE** :过期没人处理 **CANCEL** :流程已撤回 **FORWARD** :已经转他人处理 **STOP** :流程已终止 **RELIEVED** :解除协议(已解除) */
ApproveStatus?: string;
/** 签署人拒签等情况的时候填写的原因 */
ApproveMessage?: string;
/** 签署人签署时间戳,单位秒 */
ApproveTime?: number;
/** 参与者类型 **ORGANIZATION** :企业签署人 **PERSON** :个人签署人 */
ApproveType?: string;
/** 自定义签署人的角色名, 如: 收款人、开具人、见证人等 */
ApproverRoleName?: string;
/** 签署参与人在本流程中的编号ID(每个流程不同),可用此ID来定位签署参与人在本流程的签署节点。 */
SignId?: string;
/** 模板配置时候的签署人角色ID(用PDF文件发起也可以指定,如果不指定则自动生成此角色ID), 所有的填写控件和签署控件都归属不同的角色 */
RecipientId?: string;
}
/** 创建签署流程签署人入参。**各种场景传参说明**: 场景编号 发起方类型 签署方类型 签署方传参说明 场景一 第三方子企业A员工 第三方子企业A员工 (选填)IdCardNumber和IdCardType:证件类型和证件号 (必传)Name:签署方的名字 (必传)Mobile:签署方的手机号 (必传)OpenId:企业员工标识 (必传)OrganizationName:子企业名称 (必传)OrganizationOpenId:子企业的标识 (固定)ApproverType:需设置为ORGANIZATION 场景二 第三方子企业A员工 第三方子企业B(不指定经办人走领取方式) (必传)OrganizationName:子企业名称 (必传)OrganizationOpenId:子企业的标识 (固定)ApproverType:需设置为ORGANIZATION (固定)ApproverOption.FillType:需设置为1 场景三 第三方子企业A员工 第三方子企业B员工 (选填)IdCardNumber和IdCardType:证件类型和证件号 (必传)Name:签署方的名字 (必传)Mobile:签署方的手机号 (必传)OpenId:企业员工标识 (必传)OrganizationName:子企业名称 (必传)OrganizationOpenId:子企业的标识 (固定)ApproverType:需设置为ORGANIZATION 场景四 第三方子企业A员工 个人/自然人 (选填)IdCardNumber和IdCardType:证件类型和证件号 (必传)Name:签署方的名字 (必传)Mobile:签署方的手机号 (固定)ApproverType:需设置为PERSON 场景五 第三方子企业A员工 SaaS平台企业员工 (选填)IdCardNumber和IdCardType:证件类型和证件号 (必传)OrganizationName:SaaS企业的名字 (必传)Name:签署方的名字 (必传)Mobile:签署方的手机号 (不传)OrganizationOpenId:子企业的标识 (不传)OpenId:企业员工标识 (固定)ApproverType:需设置为ORGANIZATION (固定)NotChannelOrganization:需设置为True **注1**: `使用模板发起合同时,RecipientId(模板发起合同时)必传`RecipientId参数获取:从DescribeFlowTemplates接口接口中,可以得到模板下的签署方Recipient列表,根据模板自定义的Rolename在此结构体中确定其RecipientId。**注2**: `如果发起的是动态签署方(即ApproverOption.FillType指定为1),可以不指定具体签署人信息`, 动态签署方可以参考此文档 */
declare interface FlowApproverInfo {
/** 签署方经办人的姓名。经办人的姓名将用于身份认证和电子签名,请确保填写的姓名为签署方的真实姓名,而非昵称等代名。 */
Name?: string;
/** 签署方经办人的证件类型,支持以下类型ID_CARD : 中国大陆居民身份证 (默认值)HONGKONG_AND_MACAO : 中国港澳居民来往内地通行证HONGKONG_MACAO_AND_TAIWAN : 中国港澳台居民居住证(格式同中国大陆居民身份证)OTHER_CARD_TYPE : 其他证件注: `其他证件类型为白名单功能,使用前请联系对接的客户经理沟通。` */
IdCardType?: string;
/** 签署方经办人的证件号码,应符合以下规则中国大陆居民身份证号码应为18位字符串,由数字和大写字母X组成(如存在X,请大写)。中国港澳居民来往内地通行证号码共11位。第1位为字母,“H”字头签发给中国香港居民,“M”字头签发给中国澳门居民;第2位至第11位为数字。中国港澳台居民居住证号码编码规则与中国大陆身份证相同,应为18位字符串。 */
IdCardNumber?: string;
/** 签署方经办人手机号码, 支持国内手机号11位数字(无需加+86前缀或其他字符), 不支持海外手机号。请确认手机号所有方为此合同签署方。 */
Mobile?: string;
/** 组织机构名称。请确认该名称与企业营业执照中注册的名称一致。如果名称中包含英文括号(),请使用中文括号()代替。 */
OrganizationName?: string;
/** 指定签署人非第三方平台子客企业下员工还是SaaS平台企业,在ApproverType为ORGANIZATION时指定。false: 默认值,第三方平台子客企业下员工true: SaaS平台企业下的员工 */
NotChannelOrganization?: boolean;
/** 第三方平台子客企业员工的唯一标识,长度不能超过64,只能由字母和数字组成当签署方为同一第三方平台下的员工时,该字段若不指定,则发起【待领取】的流程注: 如果传进来的OpenId已经实名并且加入企业, 则忽略Name,IdCardType,IdCardNumber,Mobile这四个入参(会用此OpenId实名的身份证和登录的手机号覆盖) */
OpenId?: string;
/** 同应用下第三方平台子客企业的唯一标识,定义Agent中的ProxyOrganizationOpenId一样,签署方为非发起方企业场景下必传,最大长度64个字符 */
OrganizationOpenId?: string;
/** 在指定签署方时,可选择企业B端或个人C端等不同的参与者类型,可选类型如下: **PERSON** :个人/自然人 **PERSON_AUTO_SIGN** :个人/自然人自动签署,适用于个人自动签场景 **ORGANIZATION** :企业/企业员工(企业签署方或模板发起时的企业静默签) **ENTERPRISESERVER** :企业/企业员工自动签(他方企业自动签署或文件发起时的本方企业自动签)注: `1. 个人自动签场景(PERSON_AUTO_SIGN)为白名单功能, 使用前请联系对接的客户经理沟通。``2. 若要实现他方企业(同一应用下)自动签,需要满足3个条件:`条件1:ApproverType 设置为ENTERPRISESERVER条件2:子客之间完成授权条件3:联系对接的客户经理沟通如何使用 */
ApproverType?: string;
/** 签署流程签署人在模板中对应的签署人Id;在非单方签署、以及非B2C签署的场景下必传,用于指定当前签署方在签署流程中的位置; */
RecipientId?: string;
/** 签署人的签署截止时间,格式为Unix标准时间戳(秒)注: `若不设置此参数,则默认使用合同的截止时间,此参数暂不支持合同组子合同` */
Deadline?: number;
/** 签署完回调url,最大长度1000个字符 */
CallbackUrl?: string;
/** 使用PDF文件直接发起合同时,签署人指定的签署控件;使用模板发起合同时,指定本企业印章签署控件的印章ID:注意:(如果模板里面指定了印章,默认使用模板里面配置的印章,不能进行变更) 通过ComponentId或ComponenetName指定签署控件,ComponentValue为印章ID。 */
SignComponents?: Component[];
/** 当签署方控件类型为 SIGN_SIGNATURE 时,可以指定签署方签名方式。如果不指定,签署人可以使用所有的签名类型,可指定的签名类型包括: HANDWRITE :需要实时手写的手写签名。 HANDWRITTEN_ESIGN :长效手写签名, 是使用保存到个人中心的印章列表的手写签名。(并且包含HANDWRITE) OCR_ESIGN :AI智能识别手写签名。 ESIGN :个人印章类型。 IMG_ESIGN : 图片印章。该类型支持用户在签署将上传的PNG格式的图片作为签名。 SYSTEM_ESIGN :系统签名。该类型可以在用户签署时根据用户姓名一键生成一个签名来进行签署。各种签名的样式可以参考下图: */
ComponentLimitType?: string[];
/** 签署方在签署合同之前,需要强制阅读合同的时长,可指定为3秒至300秒之间的任意值。若未指定阅读时间,则会按照合同页数大小计算阅读时间,计算规则如下:合同页数少于等于2页,阅读时间为3秒;合同页数为3到5页,阅读时间为5秒;合同页数大于等于6页,阅读时间为10秒。 */
PreReadTime?: number;
/** 签署完前端跳转的url,此字段的用法场景请联系客户经理确认 */
JumpUrl?: string;
/** 可以控制签署方在签署合同时能否进行某些操作,例如拒签、转交他人、是否为动态补充签署人等。详细操作可以参考开发者中心的ApproverOption结构体。 */
ApproverOption?: ApproverOption;
/** 此签署人(员工或者个人)签署前,是否需要发起方企业进行审批,取值如下:**false**:(默认)不需要审批,直接签署。**true**:需要走审批流程。当到对应参与人签署时,会阻塞其签署操作,等待发起方企业内部审批完成。企业可以通过ChannelCreateFlowSignReview审批接口通知腾讯电子签平台企业内部审批结果如果企业通知腾讯电子签平台审核通过,签署方可继续签署动作。如果企业通知腾讯电子签平台审核未通过,平台将继续阻塞签署方的签署动作,直到企业通知平台审核通过。注:`此功能可用于与发起方企业内部的审批流程进行关联,支持手动、静默签署合同` */
ApproverNeedSignReview?: boolean;
/** 指定个人签署方查看合同的校验方式,可以传值如下: **1** : (默认)人脸识别,人脸识别后才能合同内容 **2** : 手机号验证, 用户手机号和参与方手机号(ApproverMobile)相同即可查看合同内容(当手写签名方式为OCR_ESIGN时,该校验方式无效,因为这种签名方式依赖实名认证)注: 如果合同流程设置ApproverVerifyType查看合同的校验方式, 则忽略此签署人的查看合同的校验方式此字段可传多个校验方式 */
ApproverVerifyTypes?: number[];
/** 签署人签署合同时的认证方式 **1** :人脸认证 **2** :签署密码 **3** :运营商三要素(如果是港澳台客户,建议不要选择这个)**5**:设备指纹识别,需要对比手机机主预留的指纹信息,校验一致才能成功进行合同签署。(iOS系统暂不支持该校验方式)**6**:设备面容识别,需要对比手机机主预留的人脸信息,校验一致才能成功进行合同签署。(Android系统暂不支持该校验方式)默认为:1(人脸认证 ),2(签署密码),3(运营商三要素),5(设备指纹识别),6(设备面容识别)注: 1. 用模板创建合同场景, 签署人的认证方式需要在配置模板的时候指定, 在创建合同重新指定无效2. 运营商三要素认证方式对手机号运营商及前缀有限制,可以参考[运营商支持列表类](https://qian.tencent.com/developers/partner/mobile_support)得到具体的支持说明3. 校验方式不允许只包含设备指纹识别和设备面容识别,至少需要再增加一种其他校验方式。4. 设备指纹识别和设备面容识别只支持小程序使用,其他端暂不支持。 */
ApproverSignTypes?: number[];
/** 签署ID- 发起流程时系统自动补充- 创建签署链接时,可以通过查询详情接口获得签署人的SignId,然后可传入此值为该签署人创建签署链接,无需再传姓名、手机号、证件号等其他信息 */
SignId?: string;
/** 通知签署方经办人的方式, 有以下途径: **SMS** :(默认)短信 **NONE** : 不通知注: `签署方为第三方子客企业时会被置为NONE, 不会发短信通知` */
NotifyType?: string;
/** [通过文件创建签署流程](https://qian.tencent.com/developers/partnerApis/startFlows/ChannelCreateFlowByFiles)时,如果设置了外层参数SignBeanTag=1(允许签署过程中添加签署控件),则可通过此参数明确规定合同所使用的签署控件类型(骑缝章、普通章法人章等)和具体的印章(印章ID,或者印章类型)或签名方式。注:`限制印章控件或骑缝章控件情况下,仅本企业签署方可以指定具体印章(通过传递ComponentValue,支持多个),他方企业或个人只支持限制控件类型。` */
AddSignComponentsLimits?: ComponentLimit[];
/** 可以自定义签署人角色名:收款人、开具人、见证人等,长度不能超过20,只能由中文、字母、数字和下划线组成。注: `如果是用模板发起, 优先使用此处上传的, 如果不传则用模板的配置的` */
ApproverRoleName?: string;
/** 生成H5签署链接时,您可以指定签署方签署合同的认证校验方式的选择模式,可传递一下值:**0**:签署方自行选择,签署方可以从预先指定的认证方式中自由选择;**1**:自动按顺序首位推荐,签署方无需选择,系统会优先推荐使用第一种认证方式。注:`不指定该值时,默认为签署方自行选择。` */
SignTypeSelector?: number;
/** 签署人在合同中的填写控件列表,列表中可支持下列多种填写控件,控件的详细定义参考开发者中心的Component结构体单行文本控件多行文本控件勾选框控件数字控件图片控件数据表格等填写控件具体使用说明可参考[为签署方指定填写控件](https://qian.tencent.cn/developers/partner/createFlowByFiles#为签署方指定填写控件)注:`此参数仅在通过文件发起合同或者合同组时生效` */
Components?: Component[];
/** 只有在生成H5签署链接的情形下( 如调用获取H5签署链接、获取H5批量签署链接等接口),该配置才会生效。您可以指定H5签署视频核身的意图配置,选择问答模式或点头模式的语音文本。注意:1. 视频认证为白名单功能,使用前请联系对接的客户经理沟通。2. 使用视频认证时,生成H5签署链接的时候必须将签署认证方式指定为人脸(即ApproverSignTypes设置成人脸签署)。3. 签署完成后,可以通过查询签署认证人脸视频获取到当时的视频。 */
Intention?: Intention;
/** 进入签署流程的限制,目前支持以下选项: 空值(默认) :无限制,可在任何场景进入签署流程。 link :选择此选项后,将无法通过控制台或电子签小程序列表进入填写或签署操作,仅可预览合同。填写或签署流程只能通过短信或发起方提供的专用链接进行。 */
SignEndpoints?: string[];
}
/** 签署方信息,如角色ID、角色名称等 */
declare interface FlowApproverItem {
/** 合同编号 */
FlowId?: string;
/** 签署方信息,如角色ID、角色名称等 */
Approvers?: ApproverItem[];
}
/** 签署人签署链接信息。 */
declare interface FlowApproverUrlInfo {
/** 签署短链接。注意:1. 该链接有效期为**30分钟**,同时需要注意保密,不要外泄给无关用户。2. 该链接不支持小程序嵌入,仅支持**移动端浏览器**打开。3. 生成的链路后面不能再增加参数(会出现覆盖链接中已有参数导致错误) */
SignUrl?: string;
/** 签署人类型。- **PERSON**: 个人 */
ApproverType?: string;
/** 签署人姓名。 */
Name?: string;
/** 签署人手机号。 */
Mobile?: string;
/** 签署长链接。注意:1. 该链接有效期为**30分钟**,同时需要注意保密,不要外泄给无关用户。2. 该链接不支持小程序嵌入,仅支持**移动端浏览器**打开。3. 生成的链路后面不能再增加参数(会出现覆盖链接中已有参数导致错误) */
LongUrl?: string;
}
/** 批量签署合同相关信息,指定批量签署合同和签署方的信息,用于补充动态签署人。 */
declare interface FlowBatchApproverInfo {
/** 合同流程ID。 */
FlowId?: string;
/** 签署节点ID,用于生成动态签署人链接完成领取。注:`生成动态签署人补充链接时必传。` */
RecipientId?: string;
}
/** 批量签署合同相关信息,指定批量签署合同和签署方的信息,用于补充动态签署人。 */
declare interface FlowBatchUrlInfo {
/** 批量签署合同和签署方的信息,用于补充动态签署人。 */
FlowBatchApproverInfos?: FlowBatchApproverInfo[];
}
/** 此结构体(FlowDetailInfo)描述的是合同(流程)的详细信息 */
declare interface FlowDetailInfo {
/** 合同流程ID,为32位字符串。 */
FlowId?: string;
/** 合同流程的名称(可自定义此名称),长度不能超过200,只能由中文、字母、数字和下划线组成。 */
FlowName?: string;
/** 合同流程的类别分类(如销售合同/入职合同等)。该字段将被废弃,不建议使用。 请使用 UserFlowType */
FlowType?: string;
/** 合同流程当前的签署状态, 会存在下列的状态值 **INIT** :合同创建 **PART** :合同签署中(至少有一个签署方已经签署) **REJECT** :合同拒签 **ALL** :合同签署完成 **DEADLINE** :合同流签(合同过期) **CANCEL** :合同撤回 **RELIEVED** :解除协议(已解除) */
FlowStatus?: string;
/** 当合同流程状态为已拒签(即 FlowStatus=REJECT)或已撤销(即 FlowStatus=CANCEL )时,此字段 FlowMessage 为拒签或撤销原因。 */
FlowMessage?: string;
/** 合同流程的创建时间戳,格式为Unix标准时间戳(秒)。 */
CreateOn?: number;
/** 签署流程的签署截止时间, 值为unix时间戳, 精确到秒。 */
DeadLine?: number;
/** 调用方自定义的个性化字段(可自定义此字段的值),并以base64方式编码,支持的最大数据大小为 1000长度。在合同状态变更的回调信息等场景中,该字段的信息将原封不动地透传给贵方。 */
CustomData?: string;
/** 合同流程的签署方数组 */
FlowApproverInfos?: FlowApproverDetail[];
/** 合同流程的关注方信息数组 */
CcInfos?: FlowApproverDetail[];
/** 是否需要发起前审批当NeedCreateReview为true,表明当前流程是需要发起前审核的合同,可能无法进行查看,签署操作,需要等审核完成后,才可以继续后续流程当NeedCreateReview为false,不需要发起前审核的合同 */
NeedCreateReview?: boolean;
/** 用户合同的自定义分类。自定义合同类型的位置,在下图所示地方: */
UserFlowType?: UserFlowType;
/** 发起模板时,使用的模板Id */
TemplateId?: string;
}
/** 合同组中每个子合同的发起信息 */
declare interface FlowFileInfo {
/** 签署文件资源Id列表,目前仅支持单个文件 */
FileIds: string[];
/** 签署流程名称,长度不超过200个字符 */
FlowName: string;
/** 签署流程签约方列表,最多不超过5个参与方 */
FlowApprovers: FlowApproverInfo[];
/** 签署流程截止时间,十位数时间戳,最大值为33162419560,即3020年 */
Deadline?: number;
/** 签署流程的描述,长度不超过1000个字符 */
FlowDescription?: string;
/** 签署流程的类型,长度不超过255个字符 */
FlowType?: string;
/** 已废弃,请使用【应用号配置】中的回调地址统一接收消息 */
CallbackUrl?: string;
/** 第三方应用的业务信息,最大长度1000个字符。 */
CustomerData?: string;
/** 合同签署顺序类型(无序签,顺序签),默认为false,即有序签署 */
Unordered?: boolean;
/** 签署文件中的发起方的填写控件,需要在发起的时候进行填充 */
Components?: Component[];
/** 合同显示的页卡模板,说明:只支持{合同名称}, {发起方企业}, {发起方姓名}, {签署方N企业}, {签署方N姓名},且N不能超过签署人的数量,N从1开始 */
CustomShowMap?: string;
/** 本企业(发起方企业)是否需要签署审批 */
NeedSignReview?: boolean;
/** 在短信通知、填写、签署流程中,若标题、按钮、合同详情等地方存在“合同”字样时,可根据此配置指定文案,可选文案如下: 0 :合同(默认值) 1 :文件 2 :协议 3 :文书效果如下: */
FlowDisplayType?: number;
}
/** 合同转交相关信息 */
declare interface FlowForwardInfo {
/** 合同流程ID,为32位字符串。此接口的合同流程ID需要由[创建签署流程](https://qian.tencent.com/developers/companyApis/startFlows/CreateFlow)接口创建得到。 */
FlowId: string;
/** 签署方经办人在合同中的参与方ID,为32位字符串。 */
RecipientId: string;
}
/** 转交合同结果 */
declare interface FlowForwardResult {
/** 合同流程ID为32位字符串。您可以登录腾讯电子签控制台,在 "合同" -> "合同中心" 中查看某个合同的FlowId(在页面中展示为合同ID)。[点击查看FlowId在控制台中的位置](https://qcloudimg.tencent-cloud.cn/raw/0a83015166cfe1cb043d14f9ec4bd75e.png)。 */
FlowId?: string;
/** 如果失败,返回的错误细节。 */
ErrorDetail?: string;
}
/** 合同组相关信息,指定合同组子合同和签署方的信息,用于补充动态签署人。 */
declare interface FlowGroupApproverInfo {
/** 合同流程ID。 */
FlowId?: string;
/** 签署节点ID,用于生成动态签署人链接完成领取。注:`生成动态签署人补充链接时必传。` */
RecipientId?: string;
}
/** 合同组签署方信息 */
declare interface FlowGroupApprovers {
/** 合同流程ID */
FlowId?: string;
/** 签署方信息,包含合同ID和角色ID用于定位RecipientId。 */
Approvers?: ApproverItem[];
}
/** 合同组的配置项信息包括:在合同组签署过程中,是否需要对每个子合同进行独立的意愿确认。 */
declare interface FlowGroupOptions {
/** 发起方企业经办人(即签署人为发起方企业员工)是否需要对子合同进行独立的意愿确认**false**(默认):发起方企业经办人签署时对所有子合同进行统一的意愿确认。**true**:发起方企业经办人签署时需要对子合同进行独立的意愿确认。 */
SelfOrganizationApproverSignEach?: boolean;
/** 非发起方企业经办人(即:签署人为个人或者不为发起方企业的员工)是否需要对子合同进行独立的意愿确认**false**(默认):非发起方企业经办人签署时对所有子合同进行统一的意愿确认。**true**:非发起方企业经办人签署时需要对子合同进行独立的意愿确认。 */
OtherApproverSignEach?: boolean;
}
/** 合同组相关信息,指定合同组子合同和签署方的信息,用于补充动态签署人。 */
declare interface FlowGroupUrlInfo {
/** 合同组子合同和签署方的信息,用于补充动态签署人。 */
FlowGroupApproverInfos?: FlowGroupApproverInfo[];
}
/** 此结构体 (FlowInfo) 用于描述签署流程信息。 */
declare interface FlowInfo {
/** 合同流程的名称(可自定义此名称),长度不能超过200,只能由中文、字母、数字和下划线组成。 */
FlowName: string;
/** 合同流程的签署截止时间,格式为Unix标准时间戳(秒),如果未设置签署截止时间,则默认为合同流程创建后的365天时截止。如果在签署截止时间前未完成签署,则合同状态会变为已过期,导致合同作废。示例值:1604912664 */
Deadline: number;
/** 用户配置的合同模板ID,会基于此模板创建合同文档,为32位字符串。如果使用模板发起接口,此参数为必填。可以通过生成子客登录链接登录企业控制台, 在**企业模板**中得到合同模板ID。[点击产看模板Id在控制台上的位置](https://qcloudimg.tencent-cloud.cn/raw/e988be12bf28a89b4716aed4502c2e02.png) */
TemplateId?: string;
/** 合同流程的参与方列表,最多可支持50个参与方。对应不同签署人的传参方式可以参考文档 [签署方入参指引](https://qian.tencent.com/developers/partner/flow_approver)注: 在发起流程时,需要保证 FlowApprovers中的顺序与模板定义顺序一致,否则会发起失败。例如,如果模板中定义的第一个参与人是个人用户,第二个参与人是企业员工,则在 approver 中传参时,第一个也必须是个人用户,第二个参与人必须是企业员工。[点击查看模板参与人顺序定义位置](https://qcloudimg.tencent-cloud.cn/raw/c50e0a204fc5c66aaa2ca70e451ef2d6.png) */
FlowApprovers?: FlowApproverInfo[];
/** 发起方角色的填写控件的填充内容。注:只有在控制台编辑模板时,归属给发起方的填写控件(如下图)才能在创建文档的时候进行内容填充。(白名单功能需要联系对接经理开通,否则模板编辑时无法将填写控件分配给发起方)。 */
FormFields?: FormField[];
/** 该字段已废弃,请使用【应用号配置】中的回调地址统一接口消息 */
CallbackUrl?: string;
/** 合同流程的类别分类(可自定义名称,如销售合同/入职合同等),最大长度为200个字符,仅限中文、字母、数字和下划线组成。 */
FlowType?: string;
/** 合同流程描述信息(可自定义此描述),最大长度1000个字符。 */
FlowDescription?: string;
/** 调用方自定义的个性化字段(可自定义此名称),并以base64方式编码,支持的最大数据大小为1000长度。在合同状态变更的回调信息等场景中,该字段的信息将原封不动地透传给贵方。回调的相关说明可参考开发者中心的回调通知模块。 */
CustomerData?: string;
/** 您可以自定义腾讯电子签小程序合同列表页展示的合同内容模板,模板中支持以下变量:{合同名称} {发起方企业} {发起方姓名} {签署方N企业}{签署方N姓名}其中,N表示签署方的编号,从1开始,不能超过签署人的数量。例如,如果是腾讯公司张三发给李四名称为“租房合同”的合同,您可以将此字段设置为:`合同名称:{合同名称};发起方: {发起方企业}({发起方姓名});签署方:{签署方1姓名}`,则小程序中列表页展示此合同为以下样子合同名称:租房合同 发起方:腾讯公司(张三) 签署方:李四 */
CustomShowMap?: string;
/** 合同流程的抄送人列表,最多可支持50个抄送人,抄送人可查看合同内容及签署进度,但无需参与合同签署。注1. 抄送人名单中可以包括自然人以及本企业的员工(本企业员工必须已经完成认证并加入企业)。2. 请确保抄送人列表中的成员不与任何签署人重复。 */
CcInfos?: CcInfo[];
/** 发起方企业的签署人进行签署操作前,是否需要企业内部走审批流程,取值如下: **false**:(默认)不需要审批,直接签署。 **true**:需要走审批流程。当到对应参与人签署时,会阻塞其签署操作,等待企业内部审批完成。企业可以通过CreateFlowSignReview审批接口通知腾讯电子签平台企业内部审批结果 如果企业通知腾讯电子签平台审核通过,签署方可继续签署动作。 如果企业通知腾讯电子签平台审核未通过,平台将继续阻塞签署方的签署动作,直到企业通知平台审核通过。注:`此功能可用于与企业内部的审批流程进行关联,支持手动、静默签署合同` */
NeedSignReview?: boolean;
/** 若在创建签署流程时指定了关注人CcInfos,此参数可设定向关注人发送短信通知的类型: **0** :合同发起时通知通知对方来查看合同(默认) **1** : 签署完成后通知对方来查看合同 */
CcNotifyType?: number;
/** 个人自动签名的使用场景包括以下, 个人自动签署(即ApproverType设置成个人自动签署时)业务此值必传: **E_PRESCRIPTION_AUTO_SIGN**:电子处方单(医疗自动签) **OTHER** : 通用场景注: `个人自动签名场景是白名单功能,使用前请与对接的客户经理联系沟通。` */
AutoSignScene?: string;
/** 在短信通知、填写、签署流程中,若标题、按钮、合同详情等地方存在“合同”字样时,可根据此配置指定文案,可选文案如下: 0 :合同(默认值) 1 :文件 2 :协议 3 :文书效果如下: */
FlowDisplayType?: number;
}
/** 流程对应资源链接信息 */
declare interface FlowResourceUrlInfo {
/** 合同流程的ID */
FlowId?: string;
/** 对应的合同流程的PDF下载链接 */
ResourceUrlInfos?: ResourceUrlInfo[];
}
/** 电子文档的控件填充信息。按照控件类型进行相应的填充。当控件的 ComponentType='TEXT'时,FormField.ComponentValue填入文本内容```FormField输入示例:{ "ComponentId": "componentId1", "ComponentValue": "文本内容"}```当控件的 ComponentType='MULTI_LINE_TEXT'时,FormField.ComponentValue填入文本内容,支持自动换行。```FormField输入示例:{ "ComponentId": "componentId1", "ComponentValue": "多行文本内容"}```当控件的 ComponentType='CHECK_BOX'时,FormField.ComponentValue填入true或false文本```FormField输入示例:{ "ComponentId": "componentId1", "ComponentValue": "true"}```当控件的 ComponentType='FILL_IMAGE'时,FormField.ComponentValue填入图片的资源ID```FormField输入示例:{ "ComponentId": "componentId1", "ComponentValue": "yDwhsxxxxxxxxxxxxxxxxxxxxxxxxxxx"}```当控件的 ComponentType='ATTACHMENT'时,FormField.ComponentValue填入附件图片的资源ID列表,以逗号分隔,单个附件控件最多支持6个资源ID;```FormField输入示例:{ "ComponentId": "componentId1", "ComponentValue": "yDwhsxxxxxxxxxxxxxxxxxxxxxxxxxx1,yDwhsxxxxxxxxxxxxxxxxxxxxxxxxxx2,yDwhsxxxxxxxxxxxxxxxxxxxxxxxxxx3"}```当控件的 ComponentType='SELECTOR'时,FormField.ComponentValue填入选择的选项内容;```FormField输入示例:{ "ComponentId": "componentId1", "ComponentValue": "选择的内容"}```当控件的 ComponentType='DATE'时,FormField.ComponentValue填入日期内容;```FormField输入示例:{ "ComponentId": "componentId1", "ComponentValue": "2023年01月01日"}```当控件的