Post 没有凭据的收件人视图

Post Recipient View Without Their Credentials

我正在尝试接收收件人 Url,以便在我们的应用程序中嵌入签名。

我没有用户的凭据,我的所有 API 呼叫都以 Ds 管理员帐户进行。

当我执行以下命令时,我收到一条错误消息:

{
  "errorCode": "ACCOUNT_NOT_AUTHORIZED_FOR_ENVELOPE",
  "message": "This account is not authorized to access the requested envelope."
}

如果我对分配给我的信封执行此操作,它可以正常工作,但其他用户则不行。我还应该指出,我们目前在创建收件人时并未使用 clientUserId。只有一小部分需要嵌入式签名。

据我了解,管理帐户将能够检索开始嵌入式签名过程所需的 url。这不对吗?

还有什么情况下email和userName不一样?用户名不总是电子邮件地址吗?

要求:

POST https://demo.docusign.net/restapi/v2/accounts/244043/envelopes/41d02a5f-13f8-4fb5-897d-142e1c653645/views/recipient
X-DocuSign-Authentication: <DocuSignCredentials><Username>blah</Username><Password>blah2</Password><IntegratorKey>blah3</IntegratorKey></DocuSignCredentials>
Content-Type: application/json

{
 "returnUrl": "http://www.[somedomain].com",
 "email" : "someguy@gmail.com",
 "userName" : "someguy@gmail.com",
 "authenticationMethod" : "email"
}

编辑: 此外,如果我针对我的请求尝试以下操作:

{
  "returnUrl": "http://www.[mydomain].com",
  "userId" : "xxxxx-xxx-xxxx-xxx-xxxxxxxxxx",
  "authenticationMethod" : "email"
}

我收到:

{
  errorCode: "INVALID_USERID"
  message: "Invalid UserId. UserId specified in request does not match authenticated user."
}

1) 请确保用于 API 调用的用户已在首选项 -> 用户 -> 权限下启用 "Account-Wide Rights" 设置。

2) 用户名​​字段应该是在创建信封时提供的收件人全名。因此,使用上面的示例将是 "Some Guy" IMO。

除了 Luis Scott 的回答中的问题之外,您还缺少 Recipient View 方法所需的参数之一 --

clientUserId A sender created value that shows [that] the recipient is embedded (captive). Maximum of 100 characters.

clientUserId 创建一个值,并在您创建交易时(当您发送签名请求时)为签名者包含它。

然后在需要收件人视图时包括它。这是一种安全措施,可确保您的 Web 应用程序可以对签名者进行身份验证。

仅包含签名者的 clientUserId,您可以在其中自行验证他们,并且您计划为他们提供嵌入式签名视图。