PDF文件验签

更新时间:2023-02-02 02:43:37

接口描述

如果针对本地保存的签署文件进行验签,则通过“上传方式创建文档”接口上传文件,获取fileid,再传入文件id,进行验签;如果是针对某一签署流程对应的某一签署后的文件进行验签,则可直接传入签署流程id+文件id,直接进行验签。


API在线调试

可通过API在线调试工具使用接口功能,入口:PDF文件验签


接口

/v1/documents/{fileId}/verify

请求方式

GET

请求头

提供两种安全接入方式,开发者可选择其中一种方式进行对接,对应参数如何获取,参考文档【请点击】。

方式一:请求签名鉴权(优先推荐)

请求头入参示例如下:

参数名称

类型

必选

参数说明

示例值

X-Tsign-Open-App-Id

string

项目ID


Content-Type

string

application/json;charset=UTF-8


X-Tsign-Open-Ca-Timestamp

string

API 调用者传递时间戳,值为当前时间的毫秒数,也就是从1970年1月1日起至今的时间转换为毫秒,时间戳有效时间为15分钟,为了防重放攻击


Accept

string

建议统一填写 */*


X-Tsign-Open-Ca-Signature

string

签名字符串


Content-MD5

string

当请求 Body 非 Form 表单时,可以计算 Body 的 MD5 值传递给云网关进行 Body MD5 校验。建议当请求 Body 非 Form 表单时,加上此请求头。


X-Tsign-Open-Auth-Mode

string

选择请求方式进行鉴权,固定值,Signature


方式二:OAuth2.0鉴权(不推荐使用)

当安全接入选择OAuth2.0鉴权方式请点击查阅详情,请求头入参示例如下:

参数名称

类型

必选

参数说明

X-Tsign-Open-App-Id

string

项目ID

X-Tsign-Open-Token

string

通过获取鉴权Token接口返回

Content-Type

string

application/json; charset=UTF-8


请求参数

参数名称

类型

必选

参数类型

参数说明

示例值

fileId

string

path

文件id,该参数需放在请求地址上,可参考请求示例


flowId

string

query

流程id,需对已归档的签署流程进行验签


公共响应参数

参数名称

类型

必选

参数说明

示例值

code

int

业务码,0表示成功


message

string

信息


data

object

业务信息


响应参数

展开全部参数参数名称

类型

必选

参数说明

示例值

signInfos

List




cert

Object

证书信息







owner

String

所有者


serial

String

序列号


startDate

String

有效期开始时间


endDate

String

有效期结束时间


issuerCN

String

发布者名称


certBase64

String

证书信息(base64编码)

signature

Object

签名数据



modify

boolean

是否篡改


timeFrom

String

签署时间来源


signDate

String

签署时间


sealData

String

印章数据


请求示例  

GET https://smlopenapi.esign.cn/v1/documents/f34a02f8a04b415e8e5a0d5a2/verify?flowId=6cca7a040d1a6bdff5ea9cc60a7

响应示例

{
    "code": 0,
    "message": "成功",
    "data": {
    "signInfos": [
        {
                "sealData": "iVBORw0KGgoAAAAN***2dSW7DMBAE/f9PM9ccLIvT7Blu1UCAIHIkWSxztkby+SCEEEIIIYQQQgghhBBCCCGEEEIIIYQQQm4119d/ffvZt+P/X9Nz3rdz/bqXp3ONHv9178IXgAAIgEiA9Cx2ZHEAxAyIIvX3lUWJQBWB2AmIKgABkLMAUR6yuv06AcmAXAVEhHV9QCKfxMjDBRAAARAAiS2aWpoq1Yr7usprAQRAAARAAGRKDpK1UKOltrNkBhAAAZCsPkg2IGr1AiALdlJHpZbXSr4S2RFptQPIvYBkT3OzX1t5rZHQxLg/aSEieRCAAAiAlNCxkLKaX45ZS+EzABAAARAAORkQNc46TULODq9yL+4SPwA5gADIpoCoU1XF8JMBUGQho+FsNHS9nfcoQBxdyNmAZJXXam4EIAByJiDquH50LK8ulOt4taFoiyoGQAAEQITkGUBMo3I1h8goR53nzTJFbTuLARAA2RKQCCTu80be11GAOON3RUmr5AUV3V6jZxVAAGTzEONoMjkBqDQyqTC6PKvXAVLxSQcQAAGQHWYxkQfiHOcr434HYNml9BGdVAABEAAR+y1XAJI13nbOWrIabdnWgeP6IAACIOEqxt0TGWltR+17LqOTY5obAP4sQNwei9F8x3VczakABEAAJBLvncYcRy7hyhUqcrLjDEPZ1j4AuRAQdpADAcmExdW0UktiZwOPJBVAAOQmQNwjgCsAyUpCnZ9qJRfI6o6qDrsAbAACIBv+CSrHomX5QUfDherGr7zWFeN+ABnf2QAEQPYFZNJ425ajuBfdqWPH/QACIAACIDFHWbVZxpnvjC7ULPPQVp5UAAGQYUBmyN3qdjXazO9x305qxq5Q4SPJMkUlQQ4gAHLRLKby4TomzgpAzrnNddNcAAEQALkZkKxGWYYRKQKhY36SYWTquC8AARAAmQKI6j8FkGCjzLForo6ns1zNOpfZ0gAgALIRIKNvqHLSGYVqxBPrME293dd2VczugDiS1NGczGCABhAA2dwPUpHhV/pQ3SEiOUcBkBUAcTjdrgUk+iAB5GBAss09FY6yAp9o2v+Z2b6TCiAAsjUgFdXT1YBkxddsF5ljcZyAjNobAARAzhnWVTSOspzmldXX6MQaQAAEQADkQkDUcf9oTHbmI9WvNdojAARAAGQ6IJEwlw1I8Bx3ABJZ9FHYnHlBVj4SyL0ABEAAJGVyOyusqC5/MRwCyAqAOHyvAAIgAJLVKFO2dQeMznxmtBJjFgMgAAIgADL133ao8V29hjMHGYV8u0YZgAAIQgjtp3b49VDRgkVj9NOxp3jegGtdQCKJWev4/gmG9rLQreOe0CQwej6xrROWJxiasBsAxSIhpnUC0joW/9t5f+0IrWO3AZQNQkzPokd2qJ7wRYhZAIzeBWuBcPJ5+d3WGbKAYuEqphmSyPYDkA+AnAdIT1LbXnaN6E6DFklSozlID2wtkBi/AQIsC+cgPed62xGizTV6IQghhBBCCFXoD9GuzoVfBl6eAAAAAElFTkSuQmCC",
                "cert": {
                    "owner": "杭州天谷有限公司",
                    "serial": "536deb6bfce98a9143f143ca",
                    "startDate": "2020-04-13 11:46:18",
                    "endDate": "2021-04-13 11:46:18",
                    "issuerCN": "智慧CA_测试CA"
                },
                "signature": {
                    "modify": false,
                    "timeFrom": "tsa",
                    "signDate": "2021-01-14 17:03:43"
                }
            }
    ]
    }
}

错误码

错误码

错误描述

解决方案

1435002

参数错误: flowId和fileId不匹配

流程下没有相应的文档

1435002

参数错误: appId和fileId不匹配

当前appId不能查看相应的文档


我要纠错