Skip to content

获取出证/存证素材 ​

GET
/openapi/v3/esign/wills/:willId/evidence

按意愿 ID 获取该意愿的出证/存证素材,包括参与人身份核验快照、核验方式明细,以及(如涉及活体核验)音视频存证材料的下载凭证。

原样透传,不建模、不生成 PDF

CertCloud 将云签上游的响应原样透出,不对内容做解析、重塑或聚合,也不生成证据 PDF。响应体的具体结构由云签侧定义并可能随时间演进(新增字段);CertCloud 不会因上游加字段而需要跟改。下方仅给出一个代表性示例,并非完整字段清单——请勿假设响应体只含示例中出现的字段,解析时应对未知字段保持兼容。

本接口为纯查询接口,不要求携带 X-ES-Request-ID。

路径参数 ​

参数类型必填说明
willIdstring是意愿 ID,须属于调用方账户

请求示例 ​

bash
curl -X GET 'https://api.certcloud.cn/openapi/v3/esign/wills/will-xxx/evidence' \
  -H 'X-CC-Auth-Key: your-auth-key' \
  -H 'X-CC-Key-ID: your-key-id'

响应示例(代表性示例,非完整字段清单) ​

200成功
json
{
  "code": "0",
  "data": {
    "willId": "1937284655077001",
    "willType": "SIGN",
    "status": "SIGNED",
    "verificationMode": "SMS",
    "signId": "1937284655099011",
    "signerId": "1937284600001234",
    "certId": "1937284655044096",
    "certLevel": "HIGH",
    "caInfo": "{\"caName\":\"安证通国密CA\",\"caCert\":\"-----BEGIN CERTIFICATE-----\\n...\"}",
    "certSerialNumber": "0A1B2C3D4E5F",
    "certificate": "-----BEGIN CERTIFICATE-----\n...\n-----END CERTIFICATE-----",
    "hashAlg": "SHA256",
    "signedAt": "2026-07-08T18:30:00+08:00",
    "tsToken": "INTERNAL_TSA_V1:eyJ2ZXJzaW9uIjoi...(Base64URL)",
    "signatures": [
      {
        "fileName": "合同.pdf",
        "dataHash": "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08",
        "signature": "MEUCIQDx...(Base64)"
      }
    ],
    "participantEvidences": [
      {
        "participantId": "1937284655077101",
        "evidenceNo": "EV20260708183000001",
        "fiveElements": "{\"subscriberIdentity\":{\"participants\":[{\"participantId\":\"1937284655077101\",\"participantRole\":\"SIGNER\",\"personType\":\"ENTERPRISE_PERSON\",\"personId\":\"1937284600001234\",\"enterprisePersonType\":\"MANAGER\",\"person\":{\"lastName\":\"张\",\"firstName\":\"三\",\"idCardType\":\"IDCARD\",\"idCardNo\":\"110101199001010011\",\"mobile\":\"13800138000\"}}]},\"caInfo\":{\"certId\":\"1937284655044096\",\"certType\":\"ENTERPRISE\",\"certDn\":\"CN=某某科技有限公司,O=某某科技有限公司\",\"certSerialNumber\":\"0A1B2C3D4E5F\",\"certLevel\":\"HIGH\",\"caName\":\"安证通国密CA\"},\"privateKeyCustodyObligation\":{\"userAgreement\":{\"agreementTemplateId\":\"12\",\"agreementCode\":\"USER_AGREEMENT\",\"agreementVersion\":\"2.0.0\",\"title\":\"云签电子签名服务协议\",\"contentHash\":\"9f86d081...\"},\"privacyAgreement\":{\"agreementTemplateId\":\"13\",\"agreementCode\":\"PRIVACY_AGREEMENT\",\"agreementVersion\":\"2.0.0\",\"title\":\"亚数云签隐私协议\",\"contentHash\":\"3a7bd3e2...\"}},\"legalLiability\":{\"userAgreement\":{\"agreementTemplateId\":\"12\",\"agreementCode\":\"USER_AGREEMENT\",\"agreementVersion\":\"2.0.0\",\"title\":\"云签电子签名服务协议\",\"contentHash\":\"9f86d081...\"},\"privacyAgreement\":{\"agreementTemplateId\":\"13\",\"agreementCode\":\"PRIVACY_AGREEMENT\",\"agreementVersion\":\"2.0.0\",\"title\":\"亚数云签隐私协议\",\"contentHash\":\"3a7bd3e2...\"}},\"explicitConsent\":{\"participants\":[{\"participantId\":\"1937284655077101\",\"participantRole\":\"SIGNER\",\"agreementCode\":\"USER_AGREEMENT\",\"privacyAgreementCode\":\"PRIVACY_AGREEMENT\",\"noticeChecked\":true,\"agreementChecked\":true,\"privacyAgreementChecked\":true,\"readTime\":32,\"confirmedAt\":\"2026-07-08T18:30:00+08:00\"}]}}",
        "verificationResult": "{\"mode\":\"SMS\",\"status\":\"VERIFIED\",\"generatedAt\":\"2026-07-08T18:30:00+08:00\",\"attempts\":[{\"stage\":\"VERIFY_IDENTITY\",\"mode\":\"SMS\",\"status\":\"VERIFIED\",\"occurredAt\":\"2026-07-08T18:30:00+08:00\"}],\"sms\":{\"participant\":{\"participantId\":\"1937284655077101\",\"challengeId\":\"1001\",\"mobile\":\"13800138000\",\"code\":\"123456\",\"smsBizId\":\"SMS-xxx\",\"status\":\"VERIFIED\",\"failedAttempts\":0,\"expireAt\":\"2026-07-08T18:35:00+08:00\",\"verifiedAt\":\"2026-07-08T18:30:00+08:00\"}}}"
      }
    ]
  }
}

已知的代表性字段(非穷举)

  • 顶层骨架:willId / willType / status / verificationMode;签名完成的意愿另有 signId / signerId / certId / certLevel / caInfo / certSerialNumber / certificate(主证书 PEM,供独立验签)/ hashAlg(摘要算法——配合 certificate 与 signatures[] 即可对签名值自足验签)/ signedAt / tsToken / signatures[](逐文件 {fileName, dataHash, signature},fileName 按发起时原样回带、未传为 "")。
  • participantEvidences[]:每个参与人一条证据——participantId / evidenceNo(存证编号)/ fiveElements / verificationResult。注意 fiveElements、verificationResult、caInfo 均为 JSON 字符串(非嵌套对象),需二次解析;fiveElements 固定顶层键为 subscriberIdentity(订户身份快照,参与人字段为 participantRole / personType / personId / enterprisePersonType / person)/ caInfo / privateKeyCustodyObligation / legalLiability / explicitConsent。
  • downloadTicket / downloadUrl / downloadExpireAt:仅活体人脸核验且存在可下载素材时返回(上例为短信场景故无)——音视频存证材料压缩包的一次性下载凭证与地址。downloadUrl 为云签公网一次性下载地址(相对路径,补全云签域名后由浏览器直连下载,CertCloud 原样透传、不代理):ticket 高熵随机、短时效、仅下载成功才核销,重放/并发/过期即失效(上游 -5047);响应带 Cache-Control: no-store,下载行为云签侧留审计。素材包含个人信息,请控制 downloadUrl 的传播范围并妥善保管下载内容。
  • 时间格式:本接口的 signedAt / downloadExpireAt 按云签全局时间格式 yyyy-MM-dd'T'HH:mm:ssXXX 返回(与本站其他接口的毫秒时间戳字符串不同,请勿按毫秒解析)。
  • 其余字段按云签侧实际返回为准,可能随版本演进新增或调整,解析时应对未知字段保持兼容。

错误码 ​

HTTP 状态码code说明
404esign_will_not_foundwillId 不存在,或不属于当前账户——两种情形合并返回同一错误,不可区分,防止枚举他人 willId
409esign_upstream_rejected云签终态拒绝;error 为 [上游码] 文案,仅供人工排查。见上游错误响应与重试
409esign_upstream_error云签暂时性失败,可稍后重试。见上游错误响应与重试