【发布时间】:2014-10-02 15:01:14
【问题描述】:
我一直在使用 API,当我尝试使用自定义字段将信息传递到可以帮助我追踪它的信封时,出现了一个问题。 据我了解,它们是某种元数据,无论是否可见,创建时都与我们创建和存储的每个模板相关联(serverTemplates)。 我已经能够使用两个不同的文档创建我的模板,并且我在发送信封时使用 API 添加了自定义选项卡。 不幸的是,我无法得到的是自定义字段。 我按照以下方式创建了它们:https://www.docusign.co.uk/support/classic/documentation/cdse-admin-guide/account-admin/envelope-custom-fields 但我无法覆盖 API 中的值。 这是我使用的 XML 调用的一部分:
body = "<envelopeDefinition xmlns=\"http://www.docusign.com/restapi\">" +
"<accountId>" + accountId + "</accountId>" +
"<status>sent</status>" +
"<emailSubject>DocuSign API Call - Signature request from template</emailSubject>" +
"<customFields>" +
"<textCustomFields>" +
"<textCustomField>" +
"<fieldId>1</fieldId>" +
"<name>agreement_id</name>" +
"<required>true</required>" +
"<show>true</show>" +
"<value>" + agreementId + "</value>" +
"</textCustomField>" +
"<textCustomField>" +
"<fieldId>2</fieldId>" +
"<name>party_name</name>" +
"<required>true</required>" +
"<show>true</show>" +
"<value>" + partyName + "</value>" +
"</textCustomField>" +
"</textCustomFields>" +
"</customFields>" +
"<compositeTemplates>" +
"<compositeTemplate>" +
"<serverTemplates>" +
"<serverTemplate>" +
"<sequence>1</sequence>" +
"<templateId>" + templateId + "</templateId>" +
"</serverTemplate>" +
"</serverTemplates>" +
"<inlineTemplates>" +
"<inlineTemplate>" +
"<sequence>2</sequence>" +
"<recipients>" +
"<signers>" +
"<signer>" +
"<email>" + email + "</email>" +
"<name>" + recipientName + "</name>" +
"<recipientId>1</recipientId>" +
"<roleName>" + roleName + "</roleName>" +
"<tabs>" +
"<textTabs>" +
"<text>" +
"<tabLabel>agreement_id</tabLabel>" +
"<value>" + agreementId + "</value>" +
"<xPosition>220</xPosition>" +
"<yPosition>348</yPosition>" +
"<documentId>2</documentId>" +
"<pageNumber>1</pageNumber>" +
"</text> " +
"<text>" +
"<tabLabel>party_name</tabLabel>" +
"<value>" + partyName + "</value>" +
"<xPosition>130</xPosition>" +
"<yPosition>142</yPosition>" +
"<documentId>2</documentId>" +
"<pageNumber>1</pageNumber>" +
"</text> " +
"</textTabs> " +
"</tabs>" +
"</signer>" +
"</signers>" +
"</recipients>" +
"</inlineTemplate>" +
"</inlineTemplates>" +
"</compositeTemplate>" +
"</compositeTemplates>" +
"</envelopeDefinition>";
有人可以建议吗?
谢谢
【问题讨论】:
-
你能澄清一下这个问题吗?您是否尝试使用 API 访问信封自定义字段 (ECF)?我确实知道,如果您有一个定义了 ECF 的模板,甚至在帐户级别,如果您在 API 调用中为该信封指定任何 ECF,那么只有 API 中指定的 ECF 才会生效。就像模板/帐户级别的 ECF 从未存在过,所以在这种情况下 API 胜过一切。
-
嗨,路易斯,你明白了。我正在尝试使用 API 访问 ECF。我已经使用“agreement_id”和“party_name”作为名称来定义它们,勾选“Required”和“text”类型。在我上面提供的代码中,我试图访问它们并插入一个自定义值,我将使用它来跟踪这个信封。如果还不清楚,请告诉我,感谢您的帮助。
-
此外,我应该提到 ECF 已正确创建并由模板使用,因为如果我使用 DocuSign UI 创建和发送信封,我返回的所有信息都是正确的。
标签: xml rest templates docusignapi custom-fields