С Adobe EchoSign, можно ли использовать библиотечный документ в качестве шаблона?
Согласно разделу " Создать документ библиотеки " их API:
createLibraryDocument используется для создания документа в библиотеке документов пользователя. Библиотека может использоваться для отправки одного и того же документа на подпись несколько раз, либо через веб-приложение, либо через API.
Не ясно, можете ли вы поместить в документ что-то вроде%ProductName% и найти / заменить его при распространении, или вам нужно каждый раз загружать новый документ. Я планирую использовать API для отправки идентичных соглашений, но с разными названиями продуктов и компаний.
Есть идеи, если это возможно?
1 ответ
Вопрос довольно старый, поэтому я добавляю его для дальнейшего использования.
Я имел дело с той же проблемой, и я нашел решение. Вернее взломать. Вместо createLibraryDocument я использую напрямую sendDocument. Он имеет свойство mergeFieldsInfo, которое в соответствии с документацией нельзя использовать с документами библиотеки, но будет работать, если вы передадите URL файла. Я попробовал вариант с URL, и он работает, у меня есть поля, предварительно заполненные в тестовом документе.
Пример тела запроса, который работал для меня:
<?xml version="1.0"?>
<sendDocument>
<apiKey>XXXXX</apiKey>
<senderInfo nil="true"/>
<documentCreationInfo>
<fileInfos>
<FileInfo>
<fileName>Merchant Agreement.pdf</fileName>
<url>https://my.public.host.com/GetFinancing%20Merchant.pdf</url>
</FileInfo>
</fileInfos>
<mergeFieldInfo>
<mergeFields>
<MergeField>
<defaultValue>test</defaultValue>
<fieldName>companyName</fieldName>
</MergeField>
<MergeField>
<defaultValue>test</defaultValue>
<fieldName>companyAddress</fieldName>
</MergeField>
<MergeField>
<defaultValue>0123456789</defaultValue>
<fieldName>companyPhone</fieldName>
</MergeField>
</mergeFields>
</mergeFieldInfo>
<name>Merchant Agreement</name>
<recipients>
<RecipientInfo>
<email>kowalski0123@gmail.com</email>
<role>SIGNER</role>
</RecipientInfo>
</recipients>
<reminderFrequency>NEVER</reminderFrequency>
<signatureFlow>SENDER_SIGNATURE_NOT_REQUIRED</signatureFlow>
<signatureType>ESIGN</signatureType>
</documentCreationInfo>
</sendDocument>