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

如何分配Envelope Sender?DocuSign账户代用户发信封方法咨询

如何在DocuSign中分配Envelope Sender权限并以指定用户名义发送信封

我来帮你梳理下DocuSign里分配Envelope Sender权限以及以指定用户名义发送信封的具体操作,分UI和API两种场景来说明:

一、先给目标用户分配Envelope Sender权限

要让指定用户能被代表发送信封,首先得确保该用户拥有Envelope Sender的基础权限,步骤如下:

  • 用管理员账户登录DocuSign,点击左上角的Admin按钮进入管理控制台
  • 在左侧导航栏找到Users,搜索并选中你要设置的目标用户
  • 进入用户详情页后,切换到Permissions标签页
  • 在权限列表里,找到并勾选与发送信封相关的权限:至少要勾选Send Envelopes,如果需要让该用户管理自己的信封,还可以勾选Manage Envelopes
  • 滚动到页面底部,点击Save保存设置

二、以指定用户名义发送信封

方式1:通过DocuSign UI操作

如果你是管理员,想直接在网页端以指定用户的名义发信封:

  • 登录管理员账户后,进入Send页面(创建新信封的入口)
  • 在页面右上角或发送按钮附近,找到Send As(或“代表用户发送”)的下拉选项(不同版本的UI位置可能略有差异)
  • 从下拉列表中选择已经分配了Envelope Sender权限的目标用户
  • 正常完成信封创建流程:上传文档、添加收件人、设置签名位置等
  • 点击Send后,信封会以你选中的用户名义发出,收件人看到的发件人信息就是该用户的

方式2:通过API调用实现

如果是开发场景,需要通过代码自动以指定用户名义发送,核心是利用DocuSign的Impersonation功能:

  1. 先确保你的集成应用已经在Admin控制台的Integrations > Apps and Keys里被授予Impersonate User的权限
  2. 在调用创建信封的API时,指定impersonation_user_id参数为目标用户的ID(可以从Admin控制台的用户详情页获取该ID)

举个Python代码的示例:

import docusign_esign as docusign
from docusign_esign import ApiClient, EnvelopesApi, EnvelopeDefinition, Signer, SignHere, Tabs, Recipients, Document

# 初始化API客户端
api_client = ApiClient()
api_client.host = "https://demo.docusign.net/restapi"  # 生产环境替换为https://www.docusign.net/restapi
api_client.set_default_header("Authorization", "Bearer YOUR_ACCESS_TOKEN")

# 目标用户的ID(要代表发送的用户)
target_user_id = "USER_ID_OF_THE_SENDER"
# 你的账户ID
account_id = "YOUR_DOCUSIGN_ACCOUNT_ID"

# 构建信封定义
envelope_def = EnvelopeDefinition(
    email_subject="请签署这份合作协议",
    status="sent"  # 设置为sent直接发送,draft则保存为草稿
)

# 添加要签署的文档(这里用base64编码的文档内容)
with open("contract.pdf", "rb") as f:
    doc_b64 = f.read().decode("base64")
document = Document(
    document_base64=doc_b64,
    name="合作协议.pdf",
    document_id="1"
)
envelope_def.documents = [document]

# 添加收件人信息
signer = Signer(
    email="recipient@example.com",
    name="张三",
    recipient_id="1",
    routing_order="1"
)

# 添加签名位置
sign_here_tab = SignHere(
    document_id="1",
    page_number="1",
    x_position="200",
    y_position="300"
)
signer.tabs = Tabs(sign_here_tabs=[sign_here_tab])
envelope_def.recipients = Recipients(signers=[signer])

# 创建并发送信封,指定要 impersonate 的用户ID
envelopes_api = EnvelopesApi(api_client)
response = envelopes_api.create_envelope(
    account_id=account_id,
    envelope_definition=envelope_def,
    impersonation_user_id=target_user_id
)

print(f"信封已发送,信封ID: {response.envelope_id}")

几个需要注意的点

  • 目标用户必须是已激活的账户用户,且已经分配了Envelope Sender权限,否则无法被代表发送
  • UI中的Send As选项只有管理员或拥有相应权限的用户才能看到
  • API调用时,必须确保你的访问令牌(Access Token)有足够的权限,并且已经正确设置了Impersonation权限

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 07:36:56