Как предварительно заполнить вкладки в шаблоне сервера с помощью DocuSign API

Можно ли заполнить вкладку на шаблоне сервера? Если да, то каким будет правильный формат XML для этого? Я попробовал предложенное решение из сообщения на форуме DocuSign, это решение не сработало. Я прочитал документацию, но неясно, каким должен быть формат, и я не могу найти никаких примеров. Это то, что у меня есть сейчас, и оно не работает, оно возвращает и ошибка 400: запрос XML не соответствует ожидаемому формату. Кто-нибудь точно знает правильный формат?

* * Обновление **** Я использовал конвертер JSON в XML для получить правильный формат xml. Следующее принимается сервером, но не обновляет шаблон сервера.

String requestBody = "<envelopeDefinition xmlns=\"http://www.docusign.com/restapi\">" +
    "<accountId>" + accountId + "</accountId>" +
    "<status>sent</status>" +
    "<emailSubject>" + emailSubject + "</emailSubject>" +
    "<emailBlurb>" + emailBlurb + "</emailBlurb>" +
    "<templateId>81bcad0d-91ed-4616-****-************</templateId>" +
    "<templateRoles>" +
       "<templateRole>" +
          "<email>" + emailaddr4[0] + "</email>" +
          "<name>" + names[0] + "</name>" + 
          "<roleName>Student</roleName>" +
          "<tabs>" +
             "<textTabs>" +
                "<textTab>" +
                     "<tabLabel>StudentID</tabLabel>" +
                     "<value>" + student_id + "</value>" +
                     "<documentId>1</documentId>" +
                     "<pageNumber>1</pageNumber>" +
                "</textTab>"
              "</textTabs>" +
           "</tabs>" + 
     "</templateRole>" +
  "</templateRoles>" + 
"</envelopeDefinition>";

person user2573754    schedule 11.07.2013    source источник
comment
@ergin Я обновил исходный пост полным XML и дополнительной информацией.   -  person user2573754    schedule 15.07.2013


Ответы (1)


Извините, я мог бы поклясться, что единственное число textTab было необходимо внутри элемента textTabs, но похоже, что вместо этого оно должно называться просто text. Вот полное тело XML-запроса, которое работает

<envelopeDefinition xmlns="http://www.docusign.com/restapi">
   <accountId>221765</accountId>
   <status>sent</status>
   <emailSubject>API Call for sending signature request from template</emailSubject>
   <emailBlurb>This comes from Java</emailBlurb>
   <templateId>DD92AF6F-3B87-435C-A652-A7451AFE758E</templateId>
   <templateRoles>
      <templateRole>
         <email>[email protected]</email>
         <name>John Doe</name>
         <roleName>Signer1</roleName>
         <tabs>
            <textTabs>
               <text>
                  <tabLabel>DataField1</tabLabel>
                  <value>Initial Data Goes Here</value>
               </text>
            </textTabs>
         </tabs>
      </templateRole>
   </templateRoles>
</envelopeDefinition>
person Ergin    schedule 11.07.2013
comment
знаете ли вы, почему вкладки настроек в xml не заполняются автоматически значениями, которые я предоставляю. Я обновил информацию в исходном посте. - person user2573754; 19.07.2013
comment
Я все еще не вижу закрывающий тег ‹/envelopeDefinition›? - person Ergin; 19.07.2013
comment
Еще пара вещей: во-первых, я не вижу тегов в единственном числе ‹textTab› ‹/textTab› в вашем обновленном теле запроса. Далее, уверены ли вы, что имя роли для Студента правильное, и что tabLabel для StudentId также правильное? Они задаются в шаблоне в консоли и должны совпадать. - person Ergin; 19.07.2013
comment
Я дважды проверил имя роли и tabLabel, и они совпадают в xml и на консоли. Публикация в формате xml прошла успешно, но текст в StudentID не изменился. - person user2573754; 22.07.2013
comment
Хорошо, а как насчет других моих комментариев, касающихся элементов ‹textTab› в единственном числе? Можете ли вы подтвердить, что они у вас есть, пожалуйста... - person Ergin; 22.07.2013
comment
да, я могу подтвердить, что у меня есть ‹textTab›‹/textTab› и конец определения конверта. Я обновил xml в исходном сообщении. - person user2573754; 22.07.2013