使用服务器模板创建信封,然后获取嵌入式签名的返回URL,并通过电子邮件将信封发送给收件人以签署文档.因此,用户可以使用Web中的电子邮件链接(远程)或嵌入式链接对文档进行签名.请告诉我在DocuSign API中有任何选项可以实现这一目标吗?
我们正在使用docusign人们签署在我们网站上注册的同意书,有人指出了嵌入式签名API。
据我了解,我不得不创建一个信封。
我为此使用.Net示例。
可以通过API正常登录,但是在尝试从API取回URL时出现以下错误:
ENVELOPE_IS_INCOMPLETE The Envelope is not Complete. A Complete Envelope Requires Documents, Recipients, Tabs, and a Subject Line.
Run Code Online (Sandbox Code Playgroud)
这是我的envelopeDefinition xml:
string requestBody = "<envelopeDefinition xmlns=\"http://www.docusign.com/restapi\">" +
"<accountId>" + accountId + "</accountId>" +
"<status>sent</status>" +
"<emailSubject>API Call for Embedded Sending</emailSubject>" +
"<emailBlurb>This comes from C#</emailBlurb>" +
"<templateId>[TEMPLATE ID FROM DOCUSIGN]</templateId>" +
"<templateRoles>" +
"<email>testregister@notrealurl.com</email>" + // NOTE: Use different email address if username provided in non-email format!
"<name>testregister@notrealurl.com</name>" + // username can be in email format …Run Code Online (Sandbox Code Playgroud) 我们遇到此错误:
{“ errorCode” =>“ UNKNOWN_ENVELOPE_RECIPIENT”,“ message” =>“您所标识的收件人不是指定信封的有效收件人。无法确定信封收件人。'clientUserId','email'或'userName'在请求中,信封可能不匹配。“}
但是,签名者是通过email字段或clientUserId(它们都是电子邮件)标识的,并且随处可见。我检查了四倍。因此,此错误似乎是完全错误的。此特定请求仅针对一个信封失败,我试图在其中获取特定用户的嵌入式签名体验。我无法使用我们为调查此问题而创建的其他电子邮件地址将问题与其他任何信封一起复制。
如果尝试加载嵌入式签名体验的用户已经拥有Docusign帐户,那会产生什么影响?从我的测试中可以看出,这个问题似乎源于她的电子邮件……似乎是在Docusign方面。
更新:
我故意有点含糊不清,因为我不喜欢公开披露此类数据。但是按照您的要求,这是get_recipients返回:
pry(main)> client.get_envelope_recipients(envelope_id: 'dffa4edc-1fcf-4098-b3e8-9b1a5ed984f8')
=> {
"signers" => [
[0] {
"name" => "Bridget C. Shoemaker",
"email" => "bridget.shoemaker@oakpartners.com",
"recipientId" => "1",
"recipientIdGuid" => "c8edf6a1-ab19-4bd0-af75-715bcec43aa1",
"requireIdLookup" => "false",
"userId" => "1a873cb0-044a-4b3f-9e0d-dc6a948e579b",
"clientUserId" => "bridget.shoemaker@oakpartners.com",
"routingOrder" => "1",
"note" => "",
"roleName" => "Third Party",
"status" => "delivered",
"deliveredDateTime" => "2013-12-09T18:25:44.7800000Z"
}
],
"agents" => [],
"editors" => [],
"intermediaries" => [],
"carbonCopies" => [],
"certifiedDeliveries" => [],
"inPersonSigners" => [], …Run Code Online (Sandbox Code Playgroud) 我想将DocuSign Connect作为休息监听器来实现.
我无法在任何地方找到侦听器将接收的xml架构的完整文档.
我知道pdf中有一个例子:
但我想知道是否有更正式的描述,例如xsd.
/我需要传递头信息/ header{ "X-DocuSign-Authentication": "{\"Username\":\"abc@gmail.com\",\"Password\":\"mypassword\",\ "IntegratorKey\":\"the-super-long-key\"}" } / ***我如何将用户名、密码和integratorKey传递给docusign** / '我在docusign站点上测试了参数,它们工作。
Dim sUrl As String = "https://demo.docusign.net/restapi/v1/login_information?api_password=true&include_account_id_guid=true&login_settings=all"
Dim oRequest As HttpWebRequest
oRequest = WebRequest.Create(sUrl)
oRequest.KeepAlive = False
oRequest.Headers.Add("Username", "abc@gmail.com")
oRequest.Headers.Add("Password", "mypassword")
oRequest.Headers.Add("IntegratorKey", "my-integrator-key")
Dim oResponse As HttpWebResponse = oRequest.GetResponse '*****FAILS****
Run Code Online (Sandbox Code Playgroud) 我已经编写了以下两种方法来发送签名请求.
来自模板:https://github.com/wadewegner/docusign-sample/blob/master/src/DocuSign/DocuSignClient.cs#L215
来自二进制文件:https://github.com/wadewegner/docusign-sample/blob/master/src/DocuSign/DocuSignClient.cs#L152
两者都很好,我可以看到他们出来签名:

麻烦的是接收电子邮件,要求签名充其量只是参差不齐.在我测试的早期,似乎我(大部分)收到了电子邮件,但是几天后我没有收到你在上面图片中看到的任何电子邮件.
我正在使用开发人员沙箱.有某种限制吗?
此外,似乎从我注册的电子邮件地址发送到另一个电子邮件地址特别有问题.还有更多的限制吗?
谢谢!
编辑:添加请求的其他信息.
请求#1(发布文档):
POST https://demo.docusign.net/restapi/v2/accounts/892965/envelopes HTTP/1.1
X-DocuSign-Authentication: <DocuSignCredentials>...</DocuSignCredentials>
Accept: application/json
Content-Type: multipart/form-data; boundary="BOUNDARY"
Host: demo.docusign.net
Content-Length: 91206
Expect: 100-continue
--BOUNDARY
Content-Type: application/xml; charset=utf-8
Content-Disposition: form-data
<envelopeDefinition xmlns="http://www.docusign.com/restapi"><emailSubject>DocuSign API - Signature Request on Document</emailSubject><status>sent</status><documents><document><documentId>1</documentId><name>test.pdf</name></document></documents><recipients><signers><signer><recipientId>1</recipientId><email>wade.wegner@gmail.com</email><name>Wade Wegner</name><tabs><signHereTabs><signHere><xPosition>100</xPosition><yPosition>100</yPosition><documentId>1</documentId><pageNumber>1</pageNumber></signHere></signHereTabs></tabs></signer></signers></recipients></envelopeDefinition>
--BOUNDARY
Content-Disposition: form-data; name=test; filename=test.pdf; filename*=utf-8''test.pdf
<truncating binary>
Run Code Online (Sandbox Code Playgroud)
请求#2(来自模板):
POST https://demo.docusign.net/restapi/v2/accounts/892965/envelopes HTTP/1.1
X-DocuSign-Authentication: <DocuSignCredentials>...</DocuSignCredentials>
Accept: application/json
Content-Type: application/xml; charset=utf-8
Host: demo.docusign.net
Content-Length: 421
Expect: 100-continue
<envelopeDefinition xmlns="http://www.docusign.com/restapi"><status>sent</status><emailSubject>DocuSign API - Signature Request from …Run Code Online (Sandbox Code Playgroud) findall('Email')给定以下 xml,如何使用查询元素树?
<DocuSignEnvelopeInformation xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.docusign.net/API/3.0">
<EnvelopeStatus>
<RecipientStatus>
<Type>Signer</Type>
<Email>joe@gmail.com</Email>
<UserName>Joe Shmoe</UserName>
<RoutingOrder>1</RoutingOrder>
<Sent>2015-05-04T09:58:01.947</Sent>
<Delivered>2015-05-04T09:58:14.403</Delivered>
<Signed>2015-05-04T09:58:29.473</Signed>
</RecipientStatus>
</EnvelopeStatus>
</DocuSignEnvelopeInformation>
Run Code Online (Sandbox Code Playgroud)
我有一种感觉,它与命名空间有关,但我不确定。我查看了文档并没有运气。
tree = <xml.etree.ElementTree.ElementTree object at 0x7f27a47c4fd0>
root = tree.getroot()
root
<Element '{http://www.docusign.net/API/3.0}DocuSignEnvelopeInformation' at 0x7f27a47b8a48>
root.findall('Email')
[]
Run Code Online (Sandbox Code Playgroud) 使用 DocuSign Rest API,我正在从一个模板创建一个信封,该模板具有一个必须签名的收件人角色。在为该收件人角色创建模板时,我启用了 Identity Check -> SMS Auth $。当我尝试从 DocuSign 门户发送信封时,它工作正常。但是,当我尝试使用 API 调用发送它时,我收到一条错误消息:RECIPIENT_SMS_AUTH_PHONE_MISSING: SMS 身份验证电话号码不能为空。请求正文已包含在模板角色中:
"SmsAuthentication":{
"senderProvidedNumbers":["recipient_number"] },
"IdCheckConfigurationName":"SMS Auth $",
"RequireIdLookup":true
Run Code Online (Sandbox Code Playgroud)
在进行 API 调用时,这是否有任何原因不起作用?
docusignapi ×10
asp.net ×1
c# ×1
email ×1
envelope ×1
python ×1
restrictions ×1
signature ×1
xml ×1