public Task<HSAccountResponse> CreateAccount(string emailAddress, string password) { var formData = new MultipartFormDataContent(); if (!string.IsNullOrEmpty(emailAddress) && !string.IsNullOrEmpty(password)) { formData.AddStringContent("email_address", emailAddress); formData.AddStringContent("password", password); } else throw new ArgumentNullException("emailAddress", "Both email address and password is required"); return _httpClient.PostAsync(Config.CreateAccountUri, formData) .ContinueWith(t => { using (var sr = new StreamReader(t.Result.Content.ReadAsStreamAsync().Result)) using (var tr = new JsonTextReader(sr)) { var resp = Serializer.Deserialize<HSAccountResponse>(tr); return resp; } }); }
private MultipartFormDataContent CreateFormData(HSSendSignatureRequestData request) { var formData = new MultipartFormDataContent(); if (!string.IsNullOrEmpty(request.Title)) formData.AddStringContent("title", request.Title); if (!string.IsNullOrEmpty(request.Subject)) formData.AddStringContent("subject", request.Subject); if (!string.IsNullOrEmpty(request.Message)) formData.AddStringContent("message", request.Message); if (!string.IsNullOrEmpty(request.SigningRedirectUrl)) formData.AddStringContent("signing_redirect_url", request.SigningRedirectUrl); for (var i = 0; i < request.Signers.Count; i++) { formData.AddStringContent(string.Format("signers[{0}][name]", i), request.Signers[i].Name); formData.AddStringContent(string.Format("signers[{0}][email_address]", i), request.Signers[i].EmailAddress); if (!string.IsNullOrEmpty(request.Signers[i].Order)) formData.AddStringContent(string.Format("signers[{0}][order]", i), request.Signers[i].Order); if (!string.IsNullOrEmpty(request.Signers[i].Pin)) formData.AddStringContent(string.Format("signers[{0}][pin]", i), request.Signers[i].Pin); } for (var i = 0; request.CcEmailAddresses != null && i < request.CcEmailAddresses.Count; i++) { formData.AddStringContent(string.Format("cc_email_addresses[{0}]", i), request.CcEmailAddresses[i]); } for (var i = 0; request.Files != null && i < request.Files.Count; i++) { formData.AddFileStreamContent(i, request.Files[i].FullName, request.Files[i].Name); } for (var i = 0; request.FileUrls != null && i < request.FileUrls.Count; i++) { formData.AddStringContent(string.Format("file_url[{0}]", i), request.FileUrls[i]); } if (request.UseTextTags == 1) formData.AddStringContent("use_text_tags", "1"); if (request.HideTextTags == 1) formData.AddStringContent("hide_text_tags", "1"); formData.AddStringContent("test_mode", "1"); return formData; }
public Task<HSAccountResponse> VerifyAccount(string emailAddress) { var formData = new MultipartFormDataContent(); if (!string.IsNullOrEmpty(emailAddress)) formData.AddStringContent("email_address", emailAddress); return _httpClient.PostAsync(Config.VerifyAccountUri, formData) .ContinueWith(t => { using (var sr = new StreamReader(t.Result.Content.ReadAsStreamAsync().Result)) using (var tr = new JsonTextReader(sr)) { var resp = Serializer.Deserialize<HSAccountResponse>(tr); return resp; } }); }
private MultipartFormDataContent CreateFormData(HSRemindSignatureRequestData request) { var formData = new MultipartFormDataContent(); if (!string.IsNullOrEmpty(request.EmailAddress)) formData.AddStringContent("email_address", request.EmailAddress); return formData; }
public Task<HSAccountResponse> UpdateAccount(string callbackUrl) { var formData = new MultipartFormDataContent(); if (!string.IsNullOrEmpty(callbackUrl)) formData.AddStringContent("callback_url", callbackUrl); return _httpClient.PostAsync(Config.UpdateAccountUri, formData) .ContinueWith(t => { using (var sr = new StreamReader(t.Result.Content.ReadAsStreamAsync().Result)) using (var tr = new JsonTextReader(sr)) { var resp = Serializer.Deserialize<HSAccountResponse>(tr); return resp; } }); }