我想使用docusign rest api创建一个包含2个文档的信封。
然后,我将使用"过帐收件人"视图将文档1显示给第一个收件人(在iframe中),并在同一信封中将显示的文档2签名给另一个收件人。
我用不同的tempalteRoles创建了模板(不同的名称,顺序为5和10)。
根据我的理解,使用userId和docusign帐户中的正确设置,我可以向收件人1显示文档1,然后向收件人2显示文档2。
当我尝试创建复合信封时,将显示整个文档。
当我呼叫信封的收件人状态时,它仅显示一个签名者。
我发现只有在2个模板角色具有相同的clientUserId,userName和email时才会创建信封,否则我将收到错误消息" ONESIGNALLSIGN_NOT_SATISFIED"
这是我要寄出的信封
{
"accountId":"ACCOUNT_ID",
"emailSubject":"Email subject",
"status":"sent",
"templateId":"TEMPLATE_ID",
"templateRoles": [
{
"roleName":"PDS Customer",
"email":"pds@example.com",
"name":"TestFirstName TestSurname",
"clientUserId":"1",
"tabs": {
"textTabs": [
{
"tabLabel":"DocumentNumber",
"value":"123456789",
"locked": true,
"documentId": 1,
"pageNumber": 1
}
...removed some
]
}
},
{
"roleName":"Customer",
"email":"test@example.com",
"name":"mrTestFirstName TestSurname",
"clientUserId":"2",
"tabs": {
"textTabs": [
{
"tabLabel":"StorerEmail_LocalPart",
"value":"test",
"locked": true,
"documentId": 2,
"pageNumber": 1
}
...removed some
]
}
}
],
"compositeTemplates": [
{
"compositeTemplateId": 1,
"serverTemplates": [
{
"sequence": 1,
"templateId":"TEMPLATE_ID_2"
}
]
}
]
}
该错误信息是由于启用了文档可见性。 在这种情况下,每个签名者必须至少存在一个选项卡。 您的第二个签名者(是否嵌入)必须至少具有一个选项卡。 在这种情况下,它可能在第二份文档中。
上面的API调用确实引用了第二个documentId,因此您可能还可以。
我建议您不要将"简单"发送(在顶层使用templateRoles)与复合模板混合使用。 相反,应将内联模板以及所有收件人信息添加到CompositeTemplates结构中。 您可能会因为混合这些而看到一些奇怪的行为。
最后,默认的"文档可见性"配置仅在收件人在文档上具有选项卡的情况下才向收件人显示文档。 如果第二个签名者应该看到所有文档,则必须在每个文档上为它们添加一个选项卡,或显式设置每个文档的可见性。
谢谢,我对此感到困惑,因为该文档说templateId和templateRoles是必需的API文档,但我没有意识到inlineTemplate的用途。 最后,解决方案是将第一个模板移到复合模板中,并在每个复合模板上指定模板角色