咨询:DocuSign模板通过C#/SOAP获取时SigningGroupId返回0的解决方法
解决DocuSign SOAP API中获取模板签名组ID的问题
我之前也碰到过一模一样的情况,DocuSign的RequestTemplate方法默认返回的模板对象里,签名组收件人的SigningGroupId确实会出现值为0且SigningGroupIdSpecified为false的情况——这是因为这个方法的设计定位是获取模板的基础结构与文档信息,并不会完整返回收件人的所有细节字段,包括签名组ID这类特定属性。
要正确获取收件人的SigningGroupId,你需要改用**GetTemplateRecipients**方法,这个API专门用于查询模板下的所有收件人信息,会完整返回签名组相关的字段值。
示例代码
// 调用GetTemplateRecipients获取模板的收件人列表 var recipientsResponse = dsApi.GetTemplateRecipients(templateId); // 遍历收件人,筛选出签名组类型的收件人 foreach (var recipient in recipientsResponse.Recipients) { if (recipient is SigningGroupRecipient signingGroupRecipient) { // 此处可正确获取到SigningGroupId var groupId = signingGroupRecipient.SigningGroupId; bool isIdSpecified = signingGroupRecipient.SigningGroupIdSpecified; // 后续业务逻辑处理... } }
另外补充一点:如果你尝试过调整RequestTemplate的参数,会发现它的第二个参数仅控制是否返回文档字节流,并没有额外参数能触发返回完整的收件人细节。所以最可靠的方式还是单独调用GetTemplateRecipients来获取签名组ID。
内容的提问来源于stack exchange,提问作者klambiguit
相关产品推荐
相关产品推荐

