使用DocuSign REST API创建信封时传递流程发起者参数的问题
问题解决:让原始发起者在DocuSign收件箱找到信封
你的需求完全可行,但当前实现存在两处问题:sender参数的格式和用途都不符合预期,导致没达到效果。下面是具体修正方案:
1. 为什么sender参数没用?
- 首先,DocuSign API的
sender是单个对象,不是数组,你写成数组后API会直接忽略该参数; - 其次,
sender字段的作用是指定信封的「显示发件人」(即收件人收到邮件时看到的发件人信息),并不会让该用户在自己的DocuSign收件箱中找到信封。另外你写错了字段名,正确的是userName而非username。
2. 正确实现方式:让原始发起者看到信封
有两种常用方案,优先推荐第一种:
方案一:添加为抄送收件人(最直接)
在复合模板的内联模板里,把原始发起者添加为carbonCopy(抄送)类型的收件人。这样对方会收到信封副本邮件,同时能在自己的DocuSign收件箱中找到该信封。修改后的请求体示例:
{ "emailSubject":"envelope for integration", "status":"created", "compositetemplates":[ { "compositetemplateid":"1", "inlinetemplates":[ { "recipients": { "carbonCopies": [ { "email":"myemail@test.de", "name":"Claudia", "recipientId":"2", "userId":"b3r2fc59-g34d-256d-v364-23f34ere5f97" } ] } } ] } ] }
方案二:信封共享(需额外API调用)
如果不想让对方收到抄送邮件,可在创建信封成功后,调用Envelopes::createSharedAccess API,给原始发起者授予该信封的查看权限。权限类型设为view后,对方就能在自己收件箱的「共享的信封」分类下找到该信封。
3. 若需修改显示发件人(可选)
如果你的初衷是让收件人看到的发件人为原始发起者,修正sender参数的格式和字段名即可:
{ "emailSubject":"envelope for integration", "status":"created", "compositetemplates":[ { "compositetemplateid":"1", "inlinetemplates":[] } ], "sender": { "email":"myemail@test.de", "userName":"Claudia", "userId":"b3r2fc59-g34d-256d-v364-23f34ere5f97" } }
内容的提问来源于stack exchange,提问作者Claudia_4711
相关产品推荐
相关产品推荐

