DocuSign 公证人 API 错误 - NOTARY_NOT_ALLOWED
DocuSign Notary API Error - NOTARY_NOT_ALLOWED
我正在通过 API 审查 Docusign Notary 功能。但是我卡在了一点。
API Return 异常 "{"errorCode":"NOTARY_NOT_ALLOWED","message":"Notary not enabled."}"
。我正在使用开发者帐户来测试上述功能(demo.docusign.net)。是否有任何其他设置可以启用 Docusign Notary?
private static EnvelopeDefinition MakeEnvelope(string signerEmail, string signerName, string signerClientId, string docPdf, string accountId)
{
byte[] buffer = System.IO.File.ReadAllBytes(docPdf);
EnvelopeDefinition envelopeDefinition = new EnvelopeDefinition();
envelopeDefinition.EmailSubject = "Please sign this document";
Document doc1 = new Document();
String doc1b64 = Convert.ToBase64String(buffer);
doc1.DocumentBase64 = doc1b64;
doc1.Name = "Lorem Ipsum";
doc1.FileExtension = "docx";
doc1.DocumentId = "3";
envelopeDefinition.Documents = new List<Document> { doc1 };
Signer signer1 = new Signer
{
Email = signerEmail,
Name = signerName,
ClientUserId = signerClientId,
RecipientId = "2",
NotaryId = "1",
RoutingOrder = "1"
};
NotaryRecipient notaryRecipient = new NotaryRecipient
{
Email = "xxx@xxx.com",
Name = "xxx",
RecipientId = "1",
RoutingOrder = "1",
Tabs = new Tabs
{
NotarySealTabs = new List<NotarySeal>() { new NotarySeal { XPosition = "50", YPosition = "150", DocumentId = "3", PageNumber = "1" } },
SignHereTabs = new List<SignHere>() { new SignHere { XPosition = "300", YPosition = "150", DocumentId = "3", PageNumber = "1" } }
},
UserId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx",//accountId,
NotaryType = "remote"
};
Tabs signer1Tabs = new Tabs
{
SignHereTabs = new List<SignHere>() { new SignHere { XPosition = "150", YPosition = "150", DocumentId = "3", PageNumber = "1" } }
};
signer1.Tabs = signer1Tabs;
Recipients recipients = new Recipients
{
Signers = new List<Signer> { signer1 },
Notaries = new List<NotaryRecipient> { notaryRecipient }
};
envelopeDefinition.Recipients = recipients;
envelopeDefinition.Status = "sent";
return envelopeDefinition;
}
我错过了什么吗?
并且我还在对应的账户中添加了Notary Public
代码有点偏离。您需要这样做(请参阅主题的 blog post):
var notaryHost = new NotaryHost
{
Name = "Nadia Notary",
Email = "nadianotary@domain.com",
DeliveryMethod = "email",
RecipientId = "2",
Tabs = new Tabs { NotarizeTabs = notarizeTabs }
};
// InPersonSigner is used here even if the signer doesn't sign in person
var inPersonSigner = new InPersonSigner
{
NotaryHost = notaryHost,
Name = "Eddie End User",
Email = "endusersigner@domain.com",
RecipientId = "1",
InPersonSigningType = "notary",
Tabs = new Tabs { SignHereTabs = signHereTabs }
};
var inPersonSigners = new List<InPersonSigner>();
inPersonSigners.Add(inPersonSigner);
var recipients = new Recipients{ InPersonSigners = inPersonSigners };
PS
您可能正在尝试使用 Beta 远程在线公证功能,而不是 eSign 中更成熟的 eNotary。如果那是你的意图,你可能无法做到这一点,因为它是封闭测试版,尚未向所有人开放。
我正在通过 API 审查 Docusign Notary 功能。但是我卡在了一点。
API Return 异常 "{"errorCode":"NOTARY_NOT_ALLOWED","message":"Notary not enabled."}"
。我正在使用开发者帐户来测试上述功能(demo.docusign.net)。是否有任何其他设置可以启用 Docusign Notary?
private static EnvelopeDefinition MakeEnvelope(string signerEmail, string signerName, string signerClientId, string docPdf, string accountId)
{
byte[] buffer = System.IO.File.ReadAllBytes(docPdf);
EnvelopeDefinition envelopeDefinition = new EnvelopeDefinition();
envelopeDefinition.EmailSubject = "Please sign this document";
Document doc1 = new Document();
String doc1b64 = Convert.ToBase64String(buffer);
doc1.DocumentBase64 = doc1b64;
doc1.Name = "Lorem Ipsum";
doc1.FileExtension = "docx";
doc1.DocumentId = "3";
envelopeDefinition.Documents = new List<Document> { doc1 };
Signer signer1 = new Signer
{
Email = signerEmail,
Name = signerName,
ClientUserId = signerClientId,
RecipientId = "2",
NotaryId = "1",
RoutingOrder = "1"
};
NotaryRecipient notaryRecipient = new NotaryRecipient
{
Email = "xxx@xxx.com",
Name = "xxx",
RecipientId = "1",
RoutingOrder = "1",
Tabs = new Tabs
{
NotarySealTabs = new List<NotarySeal>() { new NotarySeal { XPosition = "50", YPosition = "150", DocumentId = "3", PageNumber = "1" } },
SignHereTabs = new List<SignHere>() { new SignHere { XPosition = "300", YPosition = "150", DocumentId = "3", PageNumber = "1" } }
},
UserId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx",//accountId,
NotaryType = "remote"
};
Tabs signer1Tabs = new Tabs
{
SignHereTabs = new List<SignHere>() { new SignHere { XPosition = "150", YPosition = "150", DocumentId = "3", PageNumber = "1" } }
};
signer1.Tabs = signer1Tabs;
Recipients recipients = new Recipients
{
Signers = new List<Signer> { signer1 },
Notaries = new List<NotaryRecipient> { notaryRecipient }
};
envelopeDefinition.Recipients = recipients;
envelopeDefinition.Status = "sent";
return envelopeDefinition;
}
我错过了什么吗?
并且我还在对应的账户中添加了Notary Public
代码有点偏离。您需要这样做(请参阅主题的 blog post):
var notaryHost = new NotaryHost
{
Name = "Nadia Notary",
Email = "nadianotary@domain.com",
DeliveryMethod = "email",
RecipientId = "2",
Tabs = new Tabs { NotarizeTabs = notarizeTabs }
};
// InPersonSigner is used here even if the signer doesn't sign in person
var inPersonSigner = new InPersonSigner
{
NotaryHost = notaryHost,
Name = "Eddie End User",
Email = "endusersigner@domain.com",
RecipientId = "1",
InPersonSigningType = "notary",
Tabs = new Tabs { SignHereTabs = signHereTabs }
};
var inPersonSigners = new List<InPersonSigner>();
inPersonSigners.Add(inPersonSigner);
var recipients = new Recipients{ InPersonSigners = inPersonSigners };
PS
您可能正在尝试使用 Beta 远程在线公证功能,而不是 eSign 中更成熟的 eNotary。如果那是你的意图,你可能无法做到这一点,因为它是封闭测试版,尚未向所有人开放。