Если в шаблоне вашего сервера есть три документа, и вы хотите заменить первый документ на другой во время создания конверта, то DocuSign не сможет это сделать, так как DocuSign будет ожидать, что вы планируете заменить все документы, и он будет сгенерируйте ошибку и попросите вас отправить другие документы также во встроенном шаблоне.
Таким образом, решение для этого сценария заключается в том, что вам нужно создать шаблон с несколькими серверами, по крайней мере, в вашем случае два шаблона сервера, один шаблон сервера должен иметь документ, который вы хотите заменить, и другой шаблон сервера, который будет статическим, и он будет иди как есть в конверте. Как только это будет сделано, ваши составные шаблоны станут массивом из двух составных шаблонов. Первый составной шаблон будет иметь первый шаблон сервера и, используя InlineTemplate, или по узлу документа вы можете заменить шаблон документа сервера. И второй составной шаблон будет иметь только документы, поступающие из шаблонов второго сервера, с решением, которое ваш код может выглядеть следующим образом:
В приведенном ниже коде документ в шаблоне сервера d7697d56-e7ff-4a86-9b21-e98b81bd66c2 заменяется встроенным шаблоном или вы также можете передать его в узел документа, а f30d22b7-17da-4b61-af00-5f418f7916ec является шаблоном сервера если нет необходимости заменять какие-либо документы, они будут получены из шаблона сервера.
{
"compositeTemplates": [
{
"compositeTemplateId":"1",
"inlineTemplates": [
{
"documents":[
{
"documentBase64": "<PDFBytes>",
"documentId": "1",
"fileExtension": "pdf",
"name": "Runtime Agreement"
}
],
"recipients": {
"signers": [
{
"email": "email@gmail.com",
"name": "John Doe",
"recipientId": "1",
"roleName": "Signer1",
"routingOrder": "1"
}
]
},
"sequence": "1"
}
],
"serverTemplates": [
{
"sequence": "2",
"templateId": "d7697d56-e7ff-4a86-9b21-e98b81bd66c2"
}
]
},
{
"compositeTemplateId":"2",
"inlineTemplates": [
{
"recipients": {
"signers": [
{
"email": "email@gmail.com",
"name": "John Doe",
"recipientId": "1",
"roleName": "Signer1",
"routingOrder": "1"
}
]
},
"sequence": "2"
}
],
"serverTemplates": [
{
"sequence": "1",
"templateId": "f30d22b7-17da-4b61-af00-5f418f7916ec"
}
]
}
],
"status": "sent"
}