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

使用DocuSign API代签时如何指定签署人使用预设签名与印章?

解决DocuSign C# SDK指定签署人使用预设签名/印章的问题

要让签署人在签署时使用其账户中预设的特定签名或印章,核心是通过指定签名的唯一ID绑定到签名标签上,具体步骤如下:

1. 获取签署人账户中的签名/印章ID

首先调用DocuSign API获取目标签署人账户内的所有签名(包括印章)列表,从中提取你需要指定的签名对应的signatureId。使用C# SDK的UsersApi可实现这一点:

// 初始化UsersApi
var usersApi = new UsersApi(apiClient);
// 获取用户的签名列表,userId为签署人的DocuSign账户ID
var signatures = usersApi.ListSignatures(accountId, userId);
// 遍历列表找到目标签名(可通过name字段匹配)
var targetSignature = signatures.FirstOrDefault(s => s.Name == "预设签名名称");
string targetSignatureId = targetSignature?.SignatureId;

2. 在SignHere标签中指定SignatureId

修改原有代码,在创建SignHere对象时添加SignatureId属性,设置为上面获取到的目标签名ID:

Signer signer1 = new Signer
{
    Email = signerEmail,
    Name = signerName,
    ClientUserId = "1000",
    RecipientId = "1"
};

Tabs signerTabs = new Tabs { SignHereTabs = new List<SignHere>() };

SignHere signHereTab = new SignHere
{
    XPosition = signXPosition.ToString(),
    YPosition = signYposition.ToString(),
    DocumentId = reportInfo.ID.ToString(),
    PageNumber = signPageIndex.ToString(),
    // 指定预设签名的ID
    SignatureId = targetSignatureId
};

signerTabs.SignHereTabs.Add(signHereTab);
signer1.Tabs = signerTabs;

说明

  • 印章的处理逻辑和签名完全一致,因为在DocuSign中,印章也属于签名资源的一种,同样拥有唯一的signatureId,只需在获取列表时匹配印章的名称即可。
  • 若未指定SignatureId,DocuSign会默认使用签署人最近一次使用的签名,这就是你之前看到签名不一致的原因。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 08:53:33