您可以在使用模板时添加DocumentField吗?

时间:2018-05-21 13:23:32

标签: docusignapi

前言:我的理解是DocumentFields metadata on a document并非与收件人特别关联(因此不会显示为表单数据,并且可以在文件层面)。如果这不正确,请告诉我。

在使用模板时,是否还要定义DocumentFields?我使用的模板只包含一个文档。我目前正在使用模板和上传文档的组合创建DocuSign请求。这是一段代码,显示使用模板创建请求:

var compositeTemplate = new CompositeTemplate()
{
     ServerTemplates = new List<ServerTemplate>(),
     InlineTemplates = new List<InlineTemplate>()
};

var signer = new Signer()
{
     RecipientId = primaryRecipient.ID.ToString(),
     Name = "Full Name Here",
     RoleName = "Role 1", // Matches role on template
     Email = "Fakeemail@fakeemail.com",
};
InlineTemplate inlineTemplate = new InlineTemplate()
{
     Sequence = "1",
     Recipients = new Recipients()
     {
          Signers = new List<Signer>(),
          CarbonCopies = envelopeCarbonCopies // Set but not included here
     }
};

ServerTemplate serverTemplate = new ServerTemplate()
{
    Sequence = "1",
    TemplateId = documentConfigurations[i].TemplateId
};

compositeTemplate.ServerTemplates.Add(serverTemplate);

inlineTemplate.Recipients.Signers.Add(signer);
compositeTemplate.InlineTemplates.Add(inlineTemplate);

请求有效并且使用了模板。但是,ServerTemplate对象不允许我指定DocumentFields,并且我不能使用内联模板的Documents属性,因为我使用的是DocuSign中定义的模板。 / p>

如果我无法通过API在模板上指定DocumentFields,您可以使用UI执行此操作吗?

1 个答案:

答案 0 :(得分:2)

如果要在服务器模板中设置的文档字段为static,则可以按照以下步骤将这些静态documentfields添加到服务器模板,并在使用此服务器创建信封时模板然后它也将在信封中提供。

一个。使用DS Web App下载服务器模板,它将以JSON

的形式下载

湾在文本编辑器中打开JSON(如Notepad ++),然后转到    JSON中的documents节点,并添加documentFields,如下所示。

"documents": [{
        "documentId": "1",
        "uri": "/envelopes/40365a36-ddba-4132-a553-40b4d087935b/documents/1",
        "name": "Test.pdf",
        "order": "1",
        "pages": "1",
        "documentBase64": "<PDFBytes>",
        "display": "inline",
        "includeInDownload": "true",
        "signerMustAcknowledge": "no_interaction",
        "templateLocked": "false",
        "templateRequired": "false",
        "documentGroup": "content",
        "documentFields": [{
                "name": "s_businessDocType",
                "value": "TL"
        }]
    }]

℃。保存此JSON并在WEBApp上重新上传,它将生成新的templateId。

当您在信封中使用此服务器模板时,信封将在serverTemplate中显示documentFields

<强>更新

如果documentFields是动态的,请按照以下步骤操作:

一个。以草稿状态创建信封。

湾调用以下端点以将documentFields添加到文档

POST /v2/accounts/{accountId}/envelopes/{envelopeId}/documents/{documentId}/fields

℃。添加documentFields后,将信封状态更改为使用以下端点

发送
PUT /v2/accounts/{accountId}/envelopes/{envelopeId}
相关问题