You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过DocuSign API生成带自动填充数据的PDF草稿(无需跳转)

实现无需跳转DocuSign直接生成填充数据的PDF草稿方案

完全可以通过DocuSign的REST API实现你的需求!核心思路是先基于模板创建一个草稿信封(draft envelope)并填充用户数据,然后直接获取这个草稿信封的PDF文档预览,全程不需要跳转到DocuSign页面。

具体步骤:

  1. 创建带填充数据的草稿信封
    使用POST /v2.1/accounts/{accountId}/envelopes接口,请求体需包含以下关键信息:

    • 指定你的模板ID:"templateId": "你的模板ID"
    • 设置信封状态为草稿:"status": "created"
    • 在recipients中匹配模板里的收件人角色,同时填充对应标签数据。比如模板里有绑定到signer角色的fullName文本标签,请求体示例如下:
      {
        "templateId": "xxxx-xxxx-xxxx-xxxx",
        "status": "created",
        "recipients": {
          "signers": [
            {
              "roleName": "signer",
              "name": "用户姓名",
              "email": "用户邮箱",
              "tabs": {
                "textTabs": [
                  {
                    "tabLabel": "fullName",
                    "value": "张三"
                  }
                ]
              }
            }
          ]
        }
      }
      

    调用成功后会返回一个信封ID,后续需要用它来获取PDF。

  2. 获取填充完成的PDF草稿
    使用刚才拿到的信封ID,调用GET /v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents/1接口,请求参数里加上returnFormat=pdf,接口会直接返回填充好所有用户数据的PDF二进制内容。

排查你之前的问题:

你提到传输了用户数据但模板未加载,大概率是这两个原因:

  • 收件人角色不匹配:模板里的标签绑定了特定角色,请求中的roleName必须和模板角色名称完全一致(大小写敏感)
  • 标签名称不匹配:tabLabel要和模板中设置的标签名称完全相同,不能有拼写或格式错误

额外注意事项:

  • 确保调用沙箱环境的API端点:https://demo.docusign.net/restapi
  • 草稿信封仅保存在你的DocuSign沙箱账户中,不会自动发送,可随时删除或修改
  • 如果要在前端直接展示PDF,后端可将API返回的二进制数据封装成文件流,通过Content-Type: application/pdf响应头返回给浏览器,用户就能直接查看或下载

内容的提问来源于stack exchange,提问作者Santosh Bt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 10:57:55