2015-12-10 1 views
0

Мне нужно добавить шаблоны Docusign программно, с одним PDF-документом, содержащим несколько полей формы. В настоящее время я могу создать новый шаблон, хотя поля формы PDF не преобразуются в поля docusign.Создание шаблона с преобразованными полями формы PDF

При создании шаблона полезная нагрузка JSON выглядит следующим образом, отправляется с HTTP POST на [baseUrl]/templates в виде многостраничного запроса, включая PDF.

{ 
    "documents": [ 
    { 
     "documentId": "1", 
     "name": "fillable-form.pdf", 
     "transformPdfFields": "true" 
    } 
    ], 
    "emailSubject": "Default Blurb", 
    "enableWetSign": "false", 
    "envelopeTemplateDefinition": { 
    "name": "My Template Name", 
    "shared": "false", 
    "folderName": "Template Folder" 
    }, 
    "recipients": { 
    "signers": [ 
     { 
     "routingOrder": "1", 
     "recipientId": "1", 
     "roleName": "primary-signer", 
     "defaultRecipient": "true" 
     } 
    ] 
    } 
} 

В Post Template Documentation утверждает, что вы должны быть в состоянии позволить transformPdfFields собственности, в соответствии с Document parameter specification, но установка это свойство кажется, не имеет никакого эффекта.

Я нашел аналогичный вопрос, заданный в DocuSign API auto convert PDF fields to SecureFields, но не было реального достаточного ответа. Я хотел бы знать, может ли Docusign взвесить и дать некоторые рекомендации.


Update # 1

Вняв совету, предоставленную @ergin, я немного изменил мой запрос полезной нагрузки (заметьте, это похоже на попытку сделал ранее в ответ на @ с-Дэвисом).

К сожалению, в соответствии с предложением, описанным в примере 2 (его можно использовать для СОЗДАНИЯ НОВЫХ ТАБЛИЦ из существующих полей формы PDF), похоже, что он работает не так, как ожидалось.

Важно отметить, что это шаблон создания, а не Envelope создания.

Попытка # 1:

{ 
    "envelopeTemplateDefinition": { 
    "name": "Test Template Name", 
    "shared": false, 
    "folderName": "test-folder" 
    }, 
    "emailSubject": "Test Subject", 
    "enableWetSign": false, 
    "compositeTemplates": [ 
    { 
     "inlineTemplates": [ 
     { 
      "sequence": 1, 
      "recipients": { 
      "signers": [ 
       { 
       "recipientId": 1, 
       "roleName": "primary-signer", 
       "defaultRecipient": true 
       } 
      ] 
      } 
     } 
     ], 
     "document": { 
     "documentId": 1, 
     "name": "test-document.pdf", 
     "transformPdfFields": true 
     } 
    } 
    ] 
} 

Результата, при отправке, что в многочастном запросе, со вторым битом многоголосного быть PDF документом как обычно в том, что шаблон и не имеет получателя, указанный и никакого документа.

enter image description here

Попытка # 2 (обозначающее свойство получателя запроса шаблона):

{ 
    "envelopeTemplateDefinition": { 
    "name": "Test Template Name", 
    "shared": false, 
    "folderName": "test-folder" 
    }, 
    "emailSubject": "Test Subject", 
    "enableWetSign": false, 
    "compositeTemplates": [ 
    { 
     "inlineTemplates": [ 
     { 
      "sequence": 1, 
      "recipients": { 
      "signers": [ 
       { 
       "recipientId": 1, 
       "roleName": "primary-signer", 
       "defaultRecipient": true 
       } 
      ] 
      } 
     } 
     ], 
     "document": { 
     "documentId": 1, 
     "name": "test-document.pdf", 
     "transformPdfFields": true 
     } 
    } 
    ], 
    "recipients": { 
    "signers": [ 
     { 
     "recipientId": 1, 
     "roleName": "primary-signer", 
     "defaultRecipient": true 
     } 
    ] 
    } 
} 

Результат немного ближе - получатель теперь перечислен как и следовало ожидать, однако документ по-прежнему не рассматривается как часть этого шаблона. Единственный способ, которым документ равен, связанный с шаблоном, - это когда я устанавливаю это как внешнее свойство создания шаблона.

enter image description here

Попытка # 3 (обозначая оба свойства документа получателя & по запросу шаблона):

{ 
    "envelopeTemplateDefinition": { 
    "name": "Test Template Name", 
    "shared": false, 
    "folderName": "test-folder" 
    }, 
    "emailSubject": "Test Subject", 
    "enableWetSign": false, 
    "compositeTemplates": [ 
    { 
     "inlineTemplates": [ 
     { 
      "sequence": 1, 
      "recipients": { 
      "signers": [ 
       { 
       "recipientId": 1, 
       "roleName": "primary-signer", 
       "defaultRecipient": true 
       } 
      ] 
      } 
     } 
     ], 
     "document": { 
     "documentId": 1, 
     "name": "test-document.pdf", 
     "transformPdfFields": true 
     } 
    } 
    ], 
    "recipients": { 
    "signers": [ 
     { 
     "recipientId": 1, 
     "roleName": "primary-signer", 
     "defaultRecipient": true 
     } 
    ] 
    }, 
    "documents": [ 
    { 
     "documentId": 1, 
     "name": "test-document.pdf", 
     "transformPdfFields": true 
    } 
    ] 
} 

В результате на этой последней попытке это аналогично включая recipients и documents свойства и устранение имущества compositeTemplates полностью (кажется, что свойство не имеет никакого эффекта, присутствует ли оно или нет). Заполнитель-получатель присутствует, и документ связан с шаблоном, однако поля PDF в документе PDF не присваиваются/не преобразуются в поля Docusign.

enter image description here

ответ

0

насколько параметр transormPdfFields обеспокоен, я только когда-либо был в состоянии сделать этот параметр работы, когда связанные с документом, который находится внутри CompositeTemplate. Конечно, я говорю о отправке конверта здесь, но я уверен, что то же самое верно при создании шаблона, даже если документация может выглядеть иначе.

У меня нет образца кода для этого конкретного вызова, но если я получу свободное время, я постараюсь собрать его вместе.

+0

Я дал, что выстрел в настоящее время, а также не увенчались успехом. Подпись запроса, найденная в справочной ссылке @ https://www.docusign.net/restapi/help для 'POST {vx}/accounts/{accountid}/templates', кажется, не предлагает это как свойство полезной нагрузки. Вы тоже нашли то же самое? – Steve

0

Так что это плохо документировано (вскоре будет улучшено), но свойство transformPdfFields имеет две разные цели, основываясь на том, как и где вы используете его в своем теле запроса.

  • Дело 1: его можно использовать для ПЕРЕДАЧИ ЗНАЧЕНИЙ, содержащихся в существующих полях формы PDF, на вкладках DocuSign.
  • Случай 2: Его можно использовать для СОЗДАНИЯ НОВЫХ ТАБЛ из существующих полей формы PDF.

Для # 1 имена полей формы PDF должны соответствовать tabLabels ваших вкладок DocuSign. Пример JSON для выполнения этого будет:

{ 
    "emailSubject": "test subject", 
    "documents": [ 
    { 
     "documentId": "1", 
     "name": "document.pdf", 
     "transformPdfFields": true 
    } 
} 

Для # 2, вам нужно использовать compositeTemplates структуру с transformPdfFields собственности включена в разделе рядный шаблона, чтобы платформа создавать новые вкладки DocuSign. Вы также должны помнить, что для свойства defaultRecipient значение true для вашего получателя, поэтому система знает, кому назначить новые созданные вкладки (т. Е. Вы не можете иметь не назначенные вкладки).

Например, в следующем формате JSON должен работать:

{ 
    "compositeTemplates": [{ 
     "inlineTemplates": [{ 
      "sequence": 1, 
      "recipients": { 
       "signers": [{ 
        "email": "[email protected]", 
        "name": "John Doe", 
        "recipientId": "1", 
        "defaultRecipient": true 
       }] 
      } 
     }], 
     "document": { 
      "documentId": 1, 
      "name": "Contract.pdf", 
      "transformPdfFields": true 
     } 
    }] 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^