Docusignapi 如何通过docusignui添加文档元数据?

Docusignapi 如何通过docusignui添加文档元数据?,docusignapi,Docusignapi,我可以像通过API那样在文档级别添加隐藏元数据吗?在DocuSign API中,我可以在文档对象中执行以下操作: new Document() { DocumentId = (i+1).ToString(), DocumentBase64 = Convert.ToBase64String(request.Documents[i].Stream.ReadAsBytes()), Name = request.Documents[i].N

我可以像通过API那样在文档级别添加隐藏元数据吗?在DocuSign API中,我可以在文档对象中执行以下操作:

    new Document()
    {
        DocumentId = (i+1).ToString(),
        DocumentBase64 = Convert.ToBase64String(request.Documents[i].Stream.ReadAsBytes()),
        Name = request.Documents[i].Name,
        DocumentFields = new List<NameValue>()
        {
            new NameValue()
            {
                Name = "DocumentType",
                Value = "ElectronicConsent"
            }
        }
    };
因为我知道返回的文档是什么,所以现在可以在其上运行业务逻辑。我希望用户能够在UI中执行类似的操作。这将允许API检索不是源于代码的信封,但代码仍然知道如何处理该类型的文档

我尝试了以下方法:

我创建了一个文档自定义字段。 “文档自定义”字段为下拉类型,包含各种已知文档类型。 我修改了自定义字段,使其为白色且只读,签名者将无法修改它。 在发送信封/文档之前,我将此自定义字段添加到表单中,并选择正确的文档类型。 我把文件寄出去。
当我运行相同的API方法来检索文档字段时,不会返回该值。手动将字段放置在文档上可能会导致字段成为表单的一部分,而不是元数据。

您无法设置文档字段,因为您可以在API中设置它。您正在设置的文档自定义字段只是另一个可重用的DocuSign选项卡。因此,在WEBApp上,如果您计划使用文档自定义字段,那么您的连接侦听器应该检查两件事,一件是来自API的文档字段,另一件是作为表单数据的文档自定义字段。当通过WebApp执行此操作时,我会将该字段设置为白色文本上的白色标签,以便客户看不到该字段,但它会显示在文档上。为了使您的维护更容易,我将创建两个Connect listener,一个仅用于将使用Document字段的API用户,另一个用于将使用这些可重用文档自定义字段的非API/WebApp用户,并在两个listener上编写不同的逻辑。

谢谢Amit。我创建了一个文档类型的文档自定义字段列表,我注意到所选的值在该自定义字段的所有实例中共享。例如,在UI的tab placement页面上,我有两个文档。我在每个文档的标题上放置了一个自定义字段,并选择了文档类型。每当我更改其中一个文档类型默认选项时,另一个也会自动更改。我可以独立地更改这些值吗?有两个因素导致了这种行为,首先,您的文档自定义字段的namedatalabel在两个文档上都是相同的。第二,在您的管理员中有一个发送设置,在信封中的所有文档上,在第节下-自动复制具有相同数据标签的字段中的信息,使用此设置和相同的datalabel,无论您在何处使用具有相同datalabel的文档自定义字段,然后复制相同的值。您可以将上述部分中单个文档的设置更改为,或者在添加自定义字段时重命名datalabel。
EnvelopeDocumentsResult docList = envApi.ListDocuments(_accountId, envelopeId);
DocumentFieldsInformation docInfo = envApi.ListDocumentFields(_accountId, envelopeId, document.DocumentId);