使用eSign SDK将用户签名上传到DocuSign?

时间:2019-07-12 00:29:24

标签: docusignapi electronic-signature

我正在尝试使用eSign SDK为用户上传签名。我已经引用了this链接来为用户创建签名。下面是我的C#代码:

var usersList = usersApi.List(Constants.accountId);

ApiClient apiClient1 = new ApiClient(Constants.basePath);
apiClient1.Configuration.AddDefaultHeader("Authorization", "Bearer " + Constants.userAccessToken);
UsersApi usersApi1 = new UsersApi(apiClient1.Configuration);                

if (usersList != null && usersList.Users != null && usersList.Users.Any())
{
    var activeUser = usersList.Users.FirstOrDefault(x => x.Email == data["UserEmail"] && x.UserStatus.Equals("active", comparisonType: StringComparison.CurrentCultureIgnoreCase));
    if (activeUser != null)
    {
        UserSignature userSignature = new UserSignature()
        {
            IsDefault = "true",
            SignatureInitials = "TU",
            SignatureName = "Test User",
            ImageBase64 = Convert.ToBase64String(ReadContent(Constants.eSignName))

        };
        List<UserSignature> userSignatures = new List<UserSignature>() { userSignature };
        UserSignaturesInformation userSignaturesInformation = new UserSignaturesInformation()
        {
            UserSignatures = userSignatures
        };
        //Create Signature
        var signResult = usersApi1.CreateSignatures(Constants.accountId, activeUser.UserId, userSignaturesInformation);
    }
}

在此调用之后,将创建签名。但是,用户的签名图像(传入ImageBase64参数)不会添加到创建的签名中。我在这里使用的访问令牌来自用户配置文件中的DocuSign令牌生成器工具。在确定该请求出了什么问题时需要帮助。

1 个答案:

答案 0 :(得分:0)

为了代表其他用户采取措施(在您的情况下,您希望为其他用户生成并上传签名图像),您必须在使用JWT进行身份验证时模拟它们。您必须将其用户ID(GUID)作为API调用的一部分,并且用户必须同意该应用至少代表他们进行一次调用。