You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过DocuSign_eSign Rails gem获取邮件中的文档签署URL

问题描述

我尝试使用以下代码通过DocuSign_eSign Rails gem获取文档签署URL:

envelope_api = DocuSign_eSign::EnvelopesApi.new(api_client)
response = envelope_api.create_envelope(account_id, envelope_definition)
{:documents=>[{:documentBase64=>"", :documentId=>"123", :fileExtention=>"pdf", :name=>"document"}],:emailSubject=>"testmail", :recipients=>{:signers=>[{:email=>"abc@gmail.com.com", :name=>"abc", :recipientId=>"1234"}]}, :status=>"sent"}
recipient_view_request = DocuSign_eSign::RecipientViewRequest.new
recipient_view_request.return_url = "http://example.com"
recipient_view_request.authentication_method = 'None'
recipient_view_request.email = "abc@gmail.com"
recipient_view_request.user_name = "abc"
signing_url = envelopes_api.create_recipient_view(account_id, response.envelope_id, recipient_view_request)
signing_url.url

但目前仅能获取查看URL,我需要的是创建信封时发送给用户邮件中的文档签署URL。项目需求为用户点击签署文档按钮后,签署其上传的文档,因此需要该邮件中的签署链接。

解决方案
  • DocuSign不会直接提供邮件内的签署链接,这类链接是一次性、和收件人会话绑定的,且有有效期限制,无法通过API直接获取。
  • 你当前用create_recipient_view生成的嵌入式签署链接,功能和邮件内的链接完全一致——用户点击后可直接进入签署页面完成操作,完全能满足你的业务需求。
  • 若生成的是查看链接,可从这几点排查修正:
    • 检查收件人邮箱:你代码里写了abc@gmail.com.com(多了一个.com),和后续请求的abc@gmail.com不匹配,这大概率是核心问题,先修正邮箱一致性。
    • 调整验证方式:将authentication_method设置为符合你账号要求的类型(比如"Email"),避免跳过验证步骤导致权限异常。
    • 确认信封状态:确保信封状态为"sent",未发送的信封无法生成有效签署链接。

内容的提问来源于stack exchange,提问作者Vivek gautam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 03:03:32