Docusign Authentication Guide说,对于系统集成,我应该使用JWT Grant。由于我正在与不同的供应商进行集成-我必须获得外部应用程序的管理员同意。我做的。然后,我使用方法RequestJWTApplicationToken(C#SDK)生成了OAuthToken。当我尝试使用此令牌时
apiClient.Configuration.AddDefaultHeader("Authorization", "Bearer " + oAuthToken.access_token);
我收到错误:
{
"errorCode":"AUTHORIZATION_INVALID_TOKEN",
"message":"The access token provided is expired, revoked or malformed. Authentication for System Application failed."
}
[不幸的是,所有SDK示例都是关于个人同意的。没有人有C#示例如何在“外部应用程序”的情况下使用JWT?
对于DocuSign eSignature API使用JWT授权流时,必须使用RequestJWTUserToken方法。
该JWT授权流程包括一个用户ID(GUID格式)。您从身份验证流中收到的最终访问令牌使您的应用可以模拟用户ID。
DocuSign eSignature API不接受application
JWT请求。 DocuSign Admin API确实接受application
JWT请求,这就是该方法在C#SDK中的原因。但是该方法不适用于eSignature API。
PS。请记住,在获得同意时,同时请求signature
和impersonation
范围。