Docusign API复合模板

时间:2014-09-09 21:33:10

标签: docusignapi docusigncompositetmplts

我正在尝试使用compositeTemplate创建一个包含收件人信息和用户提供的文档的信封。在创建时,收件人信息或文档都不会添加到信封中。但是,信封使用服务器模板部分中提供的模板。 bytestring变量是pdfbytes。我正在使用REST API。下面是我的xml字符串。任何帮助表示赞赏。

编辑9/12,原始结果相同。 另外,我已经成功创建了一个信封,其中包含提供的pdf字节,但不使用任何模板。

<envelopeDefinition xmlns="http://www.docusign.com/restapi">
            ...
            <compositeTemplates>
                <compositeTemplate>
                    <serverTemplates>
                       ...
                    </serverTemplates>
                    <inlineTemplates>
                       ...
                    </inlineTemplates>
                    <document>
                        <name>DOCUSIGN API TEST DOC</name>
                        <documentId>123456</documentId>
                        <documentBase64>pdfbytestring</documentBase64>
                    </document>
                </compositeTemplate>
            </compositeTemplates>
        </envelopeDefinition>

1 个答案:

答案 0 :(得分:0)

PDFBytes 不是DocuSign REST API中文档的有效属性 - REST API Guide中没有提及该属性。 (它 是SOAP API中的有效属性 - 但您并未使用SOAP API。)这可能是DocuSign不是&#39的原因。 ; t将文档添加到信封中 - 它不识别 PDFBytes 属性,因此它只是忽略它。

您可以尝试使用 documentBase64 属性(而不是 PDFBytes )。

除了使用 documentBase64 属性(而不是 PDFBytes )之外,我还建议您重新访问XML请求结构 - 如果您需要信封包含API请求中指定的文档(而不是模板中的文档),那么您的请求的结构应如下所示:

(仅显示此处显示的请求的 compositeTemplates 部分):

<compositeTemplates>
  <compositeTemplate>
      <serverTemplates>
        <serverTemplate>
            ...
        </serverTemplate>
      </serverTemplates>
      <inlineTemplates>
        <inlineTemplate>
            ...
        </inlineTemplate>
      </inlineTemplates>        
      <document>
        <name>DOCUMENT_NAME</name>
        <documentId>DOCUMENT_ID</documentId>
        <documentBase64>DOCUMENT_BYTES</documentBase64>
      </document>
  </compositeTemplate>
</compositeTemplates>

换句话说 - 将&lt; document&gt; 节点设为 inlineTemplates 节点和 serverTemplates 节点的对等元素,并删除完全封装&lt; documents&gt; 元素(正如我在上面的例子中所示)。