当前位置: 首页 > 知识库问答 >
问题:

Docusign嵌入式签名“user_lacks_permissions”

夏侯臻
2023-03-14

我使用的是嵌入式签名代码配方中的代码,但从C#转换为VB.NET,代码使用的是Docusign API nuget。CreateEnvelope返回user_lacks_permissions。我已经通过了我的权限,检查了一切。我登录的用户是帐户管理员,似乎已经检查了所有权限。我将收件人电子邮件设置为实际的收件人电子邮件(不同于我的管理员帐户),尽管它是嵌入式签名,我不知道这是否是问题所在。我确实希望实际签名者获得签名文档的副本,这就是为什么我使用收件人电子邮件作为收件人电子邮件。

下面是导致错误的代码

        Dim accountId As String
        accountId = loginApi()


        Dim envDef As New DocuSign.eSign.Model.EnvelopeDefinition()
        envDef.EmailSubject = "TEST - Please sign this doc"

        ' Add a document to the envelope
        Dim doc As New DocuSign.eSign.Model.Document()
        doc.DocumentBase64 = System.Convert.ToBase64String(DocumentBytes)
        doc.Name = "TestFile.pdf"
        doc.DocumentId = "1"

        envDef.Documents = New List(Of DocuSign.eSign.Model.Document)()
        envDef.Documents.Add(doc)

        ' Add a recipient to sign the documeent
        Dim signer As New DocuSign.eSign.Model.Signer()
        signer.Email = recipientEmail
        signer.Name = recipientName
        signer.RecipientId = "1"
        signer.ClientUserId = "1234"
        ' must set |clientUserId| to embed the recipient!
        ' Create a |SignHere| tab somewhere on the document for the recipient to sign
        signer.Tabs = New DocuSign.eSign.Model.Tabs()
        signer.Tabs.SignHereTabs = New List(Of DocuSign.eSign.Model.SignHere)()
        Dim signHere As New DocuSign.eSign.Model.SignHere()
        signHere.DocumentId = "1"
        signHere.PageNumber = "1"
        signHere.RecipientId = "1"
        signHere.XPosition = "100"
        signHere.YPosition = "100"
        signer.Tabs.SignHereTabs.Add(signHere)

        envDef.Recipients = New DocuSign.eSign.Model.Recipients()
        envDef.Recipients.Signers = New List(Of DocuSign.eSign.Model.Signer)()
        envDef.Recipients.Signers.Add(signer)

        ' set envelope status to "sent" to immediately send the signature request
        envDef.Status = "sent"

        ' |EnvelopesApi| contains methods related to creating and sending Envelopes (aka signature requests)
        Dim envelopesApi As New DocuSign.eSign.Api.EnvelopesApi()
        Dim envelopeSummary As DocuSign.eSign.Model.EnvelopeSummary = envelopesApi.CreateEnvelope(accountId, envDef)

共有1个答案

翟奇
2023-03-14

诊断此类问题时的第一个问题是确定它是凭据(权限)问题还是其他问题。

有一个简单的测试来查看用户名是否设置正确:

运行配方测试器。你可以在Heroku上免费快速运行它。请参见“部署在Heroku上”按钮。选择嵌入的签名配方。如果它适用于您的用户演示沙箱电子邮件/密码,那么您就知道问题出在代码的某个地方。

 类似资料:
  • 两部分问题: 我们正在尝试接收一个文档准备签名的通知(我们不完全清楚通知中提供了什么)。我们不想做电子邮件通知;我们想关掉那些。我们假定嵌入签名的信息包含在非电子邮件通知中。是否有一种简单的方法向另一个程序发送推送通知,说明文档已经准备好发送,如果是这样,是否最好的方法跟踪通知,让签名API发布并从DocuSign请求信息? 在我们的测试中,我们已经能够通过API调用接收嵌入的签名URL,但它将我

  • 然后发送它以获取签名视图的收件人url: 有什么想法吗?提前谢了。

  • 我们在我们的应用程序中使用上述API进行嵌入式签名,其中应用程序将收件人重定向到由该API返回的URL。 现在主要的问题是,如果用户正在使用IE11,而这个API返回的URL超出了IE11 URL限制,会发生什么,这个变化对IE11用户是否有效?如果没有,那么IE11用户如何使用嵌入式签名功能?

  • 我正在使用嵌入式Docusign API嵌入用于签名的文档。我将名字、姓氏和电子邮件存储在来自表单的会话中。我试图将templateRoles中的电子邮件更改为从表单存储在会话中的电子邮件,但我要么超时,要么得到一个错误,即电子邮件不正确:

  • 在向信封添加签名者时,我看到了“emailnotification”选项(https://www.docusign.com/p/restapiguide/content/rest%20api%20references/recipities/signers%20recipition.htm)。但它看起来是关于DocuSign发送给签名者的电子邮件通知的语言。我想它不适用于我的用例,因为我使用嵌入式签

  • 真正的问题是docusign允许我在没有签名的情况下“完成”,因为文档是以自由形式显示的-请在下面找到我的代码-我使用docusign REST API使用/envelets/{envelopeID}/views/recipition调用为预定义的文档模板创建嵌入式签名。我正在使用RESTSHARP连接到DocuSign。非常感谢你的帮助! }