Docusign XML复合模板

时间:2014-05-14 16:20:35

标签: docusignapi

https://www.docusign.com/developer-center/explore/features/templates提供的文档中,它在一个示例中将“compositeTemplates”显示为EnvelopeDefinition的属性。

在“使用compositeTemplates的示例请求”中,“CompositeTemplates”是“templateRoles”节点的属性。

我很困惑。 “compositeTemplates”节点应该放在哪里?

我正在使用以下XML:

<envelopeDefinition xmlns="http://www.docusign.com/restapi"><envelopeDefinition xmlns="http://www.docusign.com/restapi">
  <status>sent</status>
  <emailSubject>DocuSign API - Embedded Signing example</emailSubject>
  <compositeTemplates>
    <compositeTemplate>
      <serverTemplates>
        <sequence>1</sequence>
        <templateId>B4649E36-0FA8-42EC-8011-65451EB89DFF</templateId>
        <templateRoles>
          <templateRole>
            <email>name1@domain.com</email>
            <name>FIRST ROLE</name>
            <roleName>FIRST_ROLE</roleName>
            <clientUserId>UNIQUE_IDENTIFIER_1</clientUserId>
            <tabs>
              <textTabs>
                <text>
                  <tabLabel>tabLabel1</tabLabel>
                  <value>Value1</value>
                </text>
                <text>
                  <tabLabel>tabLabel2</tabLabel>
                  <value>Value2</value>
                </text>
                <text>
                  <tabLabel>tabLabel3</tabLabel>
                  <value>Value3</value>
                </text>
              </textTabs>
            </tabs>
          </templateRole>
          <templateRole>
            <email>name2@domain.com</email>
            <name>SECOND ROLE</name>
            <roleName>SECOND_ROLE</roleName>
            <clientUserId>UNIQUE_IDENTIFIER_2</clientUserId>
          </templateRole>
        </templateRoles>
      </serverTemplates>
    </compositeTemplate>
    <compositeTemplate>
      <serverTemplates>
        <sequence>2</sequence>
        <templateId>5D2E49CC-3CE5-4C28-99C6-64E2589E5395</templateId>
        <templateRoles>
          <templateRole>
            <email>name1@domain.com</email>
            <name>First Last</name>
            <roleName>FIRST_ROLE</roleName>
            <clientUserId>UNIQUE_IDENTIFIER_1</clientUserId>
            <tabs>
              <textTabs>
                <text>
                  <tabLabel>tabLabel1</tabLabel>
                  <value>Value1</value>
                </text>
              </textTabs>
            </tabs>
          </templateRole>
        </templateRoles>
      </serverTemplates>
    </compositeTemplate>
  </compositeTemplates>
</envelopeDefinition>

我得到了以下回复:

 <errorDetails xmlns="http://www.docusign.com/restapi" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<errorCode>TEMPLATE_NOT_PROVIDED</errorCode>
<message>Template was not provided.</message>
</errorDetails>

3 个答案:

答案 0 :(得分:0)

compositeTemplates元素应位于外部并与templateRoles元素分开。尝试这样的事情:

<envelopeDefinition xmlns="http://www.docusign.com/restapi"><envelopeDefinition xmlns="http://www.docusign.com/restapi">
  <status>sent</status>
  <emailSubject>DocuSign API - Embedded Signing example</emailSubject>
  <compositeTemplates>
    <compositeTemplate>
      <serverTemplates>
        <sequence>1</sequence>
        <templateId>B4649E36-0FA8-42EC-8011-65451EB89DFF</templateId>
      </serverTemplates>
    </compositeTemplate>
    <compositeTemplate>
      <serverTemplates>
        <sequence>2</sequence>
        <templateId>5D2E49CC-3CE5-4C28-99C6-64E2589E5395</templateId>
      </serverTemplates>
    </compositeTemplate>
  </compositeTemplates>
  <templateRoles>
      <templateRole>
        <email>name1@domain.com</email>
        <name>FIRST ROLE</name>
        <roleName>FIRST_ROLE</roleName>
        <clientUserId>UNIQUE_IDENTIFIER_1</clientUserId>
        <tabs>
          <textTabs>
            <text>
              <tabLabel>tabLabel1</tabLabel>
              <value>Value1</value>
            </text>
            <text>
              <tabLabel>tabLabel2</tabLabel>
              <value>Value2</value>
            </text>
            <text>
              <tabLabel>tabLabel3</tabLabel>
              <value>Value3</value>
            </text>
          </textTabs>
        </tabs>
      </templateRole>
      <templateRole>
        <email>name2@domain.com</email>
        <name>SECOND ROLE</name>
        <roleName>SECOND_ROLE</roleName>
        <clientUserId>UNIQUE_IDENTIFIER_2</clientUserId>
      </templateRole>
    </templateRoles>
</envelopeDefinition>

答案 1 :(得分:0)

艾琳

你提到了

  Tom在DocuSign开发人员中心的模板页面上的复合模板示例已经通过一个工作示例进行了更新。感谢您发现问题。当前的示例显示了如何使用compositeTemplates组合两个不同的模板,并为每个模板角色分配两个不同的收件人......

我假设您指的是我的原始链接(https://www.docusign.com/developer-center/explore/features/templates)。如果没有,请告诉我在DocuSign开发人员中心的哪个更正。

我尝试进行以下更改,但想出了错误,&#34; ENVELOPE_IS_INCOMPLETE:信封未完成。完整信封需要文档,收件人,标签和主题行。&#34;:

<envelopeDefinition xmlns="http://www.docusign.com/restapi">
  <status>sent</status>
  <emailSubject>DocuSign API - Embedded Signing example</emailSubject>
  <compositeTemplates>
    <compositeTemplate>
      <serverTemplates>
        <serverTemplate>
          <sequence>1</sequence>
          <templateId>B4649E36-0FA8-42EC-8011-65451EB89DFF</templateId>
        </serverTemplate>
      </serverTemplates>
      <inlineTemplates>
        <inlineTemplate>
          <sequence>1</sequence>
          <templateRoles>
            <templateRole>
              <email>name1@domain.com</email>
              <name>FIRST ROLE</name>
              <roleName>FIRST_ROLE</roleName>
              <clientUserId>UNIQUE_IDENTIFIER_1</clientUserId>
              <tabs>
                <textTabs>
                  <text>
                    <tabLabel>tabLabel1</tabLabel>
                    <value>Value1</value>
                  </text>
                  <text>
                    <tabLabel>tabLabel2</tabLabel>
                    <value>Value2</value>
                  </text>
                  <text>
                    <tabLabel>tabLabel3</tabLabel>
                    <value>Value3</value>
                  </text>
                </textTabs>
              </tabs>
            </templateRole>
            <templateRole>
              <email>name2@domain.com</email>
              <name>SECOND ROLE</name>
              <roleName>SECOND_ROLE</roleName>
              <clientUserId>UNIQUE_IDENTIFIER_2</clientUserId>
            </templateRole>
          </templateRoles>
        </inlineTemplate>
      </inlineTemplates>
    </compositeTemplate>
    <compositeTemplate>
      <serverTemplates>
        <serverTemplate>
          <sequence>2</sequence>
          <templateId>5D2E49CC-3CE5-4C28-99C6-64E2589E5395</templateId>
        </serverTemplate>
      </serverTemplates>
      <inlineTemplates>
        <inlineTemplate>
          <sequence>2</sequence>
          <templateRoles>
            <templateRole>
              <email>name1@domain.com</email>
              <name>FIRST ROLE</name>
              <roleName>FIRST_ROLE</roleName>
              <clientUserId>UNIQUE_IDENTIFIER_1</clientUserId>
              <tabs>
                <textTabs>
                  <text>
                    <tabLabel>tabLabel1</tabLabel>
                    <value>Value1</value>
                  </text>
                </textTabs>
              </tabs>
            </templateRole>
          </templateRoles>
        </inlineTemplate>
      </inlineTemplates>
    </compositeTemplate>
  </compositeTemplates>
</envelopeDefinition>

答案 2 :(得分:-1)

    <envelopeDefinition xmlns="http://www.docusign.com/restapi">
  <status>sent</status>
  <emailSubject>DocuSign API - Embedded Signing example</emailSubject>
  <compositeTemplates>
    <compositeTemplate>
      <serverTemplates>
        <serverTemplate>
          <sequence>1</sequence>
          <templateId>B4649E36-0FA8-42EC-8011-65451EB89DFF</templateId>
        </serverTemplate>
      </serverTemplates>
    </compositeTemplate>
    <compositeTemplate>
      <serverTemplates>
        <serverTemplate>
          <sequence>2</sequence>
          <templateId>5D2E49CC-3CE5-4C28-99C6-64E2589E5395</templateId>
        </serverTemplate>
      </serverTemplates>
    </compositeTemplate>
  </compositeTemplates>
  <templateId>B4649E36-0FA8-42EC-8011-65451EB89DFF</templateId>
  <templateRoles>
    <templateRole>
      <email>NAME1@DOMAIN.COM</email>
      <name>FIRST ROLE</name>
      <roleName>FIRST_ROLE</roleName>
      <clientUserId>UNIQUE_IDENTIFIER_1</clientUserId>
      <tabs>
        <textTabs>
          <text>
            <tabLabel>tabLabel1</tabLabel>
            <value>Value1</value>
          </text>
          <text>
            <tabLabel>tabLabel2</tabLabel>
            <value>Value2</value>
          </text>
        </textTabs>
      </tabs>
    </templateRole>
    <templateRole>
      <email>NAME2@DOMAIN.COM</email>
      <name>SECOND ROLE</name>
      <roleName>SECOND_ROLE</roleName>
      <clientUserId>UNIQUE_IDENTIFIER_2</clientUserId>
    </templateRole>
  </templateRoles>
</envelopeDefinition>

它有点奏效。为:创建信封:

  1. 模板B4649E36-0FA8-42EC-8011-65451EB89DFF - 带有填充值和签名
  2. 模板B4649E36-0FA8-42EC-8011-65451EB89DFF - 没有值或签名
  3. 模板5D2E49CC-3CE5-4C28-99C6-64E2589E5395 - 没有值或签名
  4. 我正在尝试使用2个填充了数据和签名者的模板创建一个信封。