有奖捉虫:办公协同&微信生态&物联网文档专题 HOT

1. 接口描述

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

对合同流程文件进行数字签名验证,判断数字签名是否有效,合同文件内容是否被篡改。

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

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

2. 输入参数

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

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:VerifyPdf。
Version String 公共参数,本接口取值:2020-11-11。
Region String 公共参数,此参数为可选参数。
FlowId String 合同流程ID,为32位字符串。
可登录腾讯电子签控制台,在 "合同"->"合同中心" 中查看某个合同的FlowId(在页面中展示为合同ID)。
Operator UserInfo 执行本接口操作的员工信息。
注: `在调用此接口时,请确保指定的员工已获得所需的接口调用权限,并具备接口传入的相应资源的数据权限。
Agent Agent 代理企业和员工的信息。
在集团企业代理子企业操作的场景中,需设置此参数。在此情境下,ProxyOrganizationId(子企业的组织ID)为必填项。

3. 输出参数

参数名称 类型 描述
VerifyResult Integer 验签结果代码,代码的含义如下:

  • 1:文件未被篡改,全部签名在腾讯电子签完成。
  • 2:文件未被篡改,部分签名在腾讯电子签完成。
  • 3:文件被篡改。
  • 4:异常:文件内没有签名域。
  • 5:异常:文件签名格式错误。
PdfVerifyResults Array of PdfVerifyResult 验签结果详情,每个签名域对应的验签结果。状态值如下
  • 1 :验签成功,在电子签签署
  • 2 :验签成功,在其他平台签署
  • 3 :验签失败
  • 4 :pdf文件没有签名域
  • 5 :文件签名格式错误
VerifySerialNo String 验签序列号, 为11为数组组成的字符串
PdfResourceMd5 String 合同文件MD5哈希值
示例值:C39BBA405153FB9A0705BEF095351CBD
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 示例

1.对流程合同yDwFdUUckpsveo27UEQPEVo14KnASuGI进行数字签名验证
2.流程合同yDwFdUUckpsveo27UEQPEVo14KnASuGI验证正常

输入示例

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

{
    "Operator": {
        "UserId": "yDxVwUyKQWho8CUuO4zjEyQOAgwvr4Zy"
    },
    "FlowId": "yDwFdUUckpsveo27UEQPEVo14KnASuGI"
}

输出示例

{
    "Response": {
        "PdfVerifyResults": [
            {
                "CertNotAfter": 166300032000,
                "CertNotBefore": 16630002000,
                "CertSn": "166300032000",
                "ComponentHeight": 33.340026855469,
                "ComponentPage": 1,
                "ComponentPosX": 160,
                "ComponentPosY": 293.32995605469,
                "ComponentWidth": 100,
                "SignAlgorithm": "SHA1withRSA",
                "SignPlatform": "腾讯电子签",
                "SignTime": 1663304532000,
                "SignerName": "ESS@xxx二@41xxxxx6635@666744",
                "VerifyResult": 1
            },
            {
                "CertNotAfter": 1663304655000,
                "CertNotBefore": 1663304655000,
                "CertSn": "2b42298dcxxxxx7527eaa1017e254e8",
                "ComponentHeight": 75.680023193359,
                "ComponentPage": 1,
                "ComponentPosX": 260,
                "ComponentPosY": 272.15997314453,
                "ComponentWidth": 100,
                "SignAlgorithm": "SHA1withRSA",
                "SignPlatform": "腾讯电子签",
                "SignTime": 1663304656000,
                "SignerName": "张x x",
                "VerifyResult": 1
            }
        ],
        "RequestId": "79900a28xxxxxx-4af8a90f7292",
        "VerifySerialNo": "16698630779",
        "VerifyResult": 1,
        "PdfResourceMd5": "8879F721C764ABC918FD862B748F691C"
    }
}

示例2 对流程合同文件进行验签-验签失败(文件被篡改)

1.对流程合同yDwFdUUckpsvet4jUEn0aFRxtu5TdalM进行数字签名验证
2.流程合同yDwFdUUckpsvet4jUEn0aFRxtu5TdalM的文件被篡改,验证失败

输入示例

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

{
    "Operator": {
        "UserId": "yDxVwUyKQWho8CUuO4zjEyQOAgwvr4Zy"
    },
    "FlowId": "yDwFdUUckpsvet4jUEn0aFRxtu5TdalM"
}

输出示例

{
    "Response": {
        "PdfVerifyResults": [
            {
                "CertNotAfter": 16691000034000,
                "CertNotBefore": 163700034000,
                "CertSn": "5255f51cxxxxxx4d66f2a9eb8fb3d2bc1",
                "ComponentHeight": 43,
                "ComponentPage": 1,
                "ComponentPosX": 210.25,
                "ComponentPosY": 43,
                "ComponentWidth": 96.75,
                "SignAlgorithm": "SHA1withRSA",
                "SignPlatform": "腾讯电子签",
                "SignTime": 1663238861000,
                "SignerName": "深圳市腾讯计算机系统有限公司",
                "VerifyResult": 3
            },
            {
                "CertNotAfter": 166300032000,
                "CertNotBefore": 166300032000,
                "CertSn": "5255f51c7xxx82c4d66f2a9eb8fb3d2bc1",
                "ComponentHeight": 12,
                "ComponentPage": 1,
                "ComponentPosX": 223.64999389648,
                "ComponentPosY": 86,
                "ComponentWidth": 69.950012207031,
                "SignAlgorithm": "SHA1withRSA",
                "SignPlatform": "腾讯电子签",
                "SignTime": 1663238861000,
                "SignerName": "深圳xxxxx限公司",
                "VerifyResult": 3
            }
        ],
        "RequestId": "57151f15-2xxxxxx46418d4b72a",
        "VerifySerialNo": "16698630779",
        "VerifyResult": 3,
        "PdfResourceMd5": "49649219B8771ACB538D418810983716"
    }
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

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

错误码 描述
InternalError 内部错误。
InvalidParameter.ParamError 参数错误。
OperationDenied.ErrNoResourceAccess 此企业无该资源使用权限。
OperationDenied.Forbid 禁止此项操作。
OperationDenied.NoFlowPermission 无权限操作签署流程,请联系客服了解权限,并在修改后重试。
UnauthorizedOperation.NoPermissionFeature 请升级到对应版本后即可使用该接口。