Guest User

Untitled

a guest
Apr 9th, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.80 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using System.IO;
  7. using Newtonsoft.Json;
  8.  
  9. using DocuSign.eSign.Api;
  10. using DocuSign.eSign.Model;
  11. using DocuSign.eSign.Client;
  12.  
  13. namespace CoreRecipes
  14. {
  15. class Program
  16. {
  17. private string INTEGRATOR_KEY = "[key]";
  18. static void Main(string[] args)
  19. {
  20. Program recipes = new Program();
  21. recipes.listDocumentsAndDownloadTest();
  22. Console.Read();
  23. }
  24. public void listDocumentsAndDownloadTest()
  25. {
  26. string username = "[username]";
  27. string password = "[password]";
  28. string envelopeId = "envelopid";
  29. //configureApiClient("www.docusign.net/restapi");
  30. //http"s://demo.docusign.net/restapi"
  31. configureApiClient("https://demo.docusign.net/restpi");
  32. string accountId = loginApi(username, password);
  33. EnvelopesApi envelopesApi = new EnvelopesApi();
  34. EnvelopeDocumentsResult docsList = envelopesApi.ListDocuments(accountId, envelopeId);
  35. Console.WriteLine("EnvelopeDocumentsResult:n{0}", JsonConvert.SerializeObject(docsList));
  36. int docCount = docsList.EnvelopeDocuments.Count;
  37. string filePath = null;
  38. FileStream fs = null;
  39. for (int i = 0; i < docCount; i++)
  40. {
  41. MemoryStream docStream = (MemoryStream)envelopesApi.GetDocument(accountId, envelopeId, docsList.EnvelopeDocuments[i].DocumentId);
  42. filePath = Path.GetTempPath() + Path.GetRandomFileName() + ".pdf";
  43. fs = new FileStream(filePath, FileMode.Create);
  44. docStream.Seek(0, SeekOrigin.Begin);
  45. docStream.CopyTo(fs);
  46. fs.Close();
  47. Console.WriteLine("Envelope Document {0} has been downloaded to: {1}", i, filePath);
  48. }
  49. }
  50. public void configureApiClient(string basePath)
  51. {
  52. ApiClient apiClient = new ApiClient(basePath);
  53. Configuration.Default.ApiClient = apiClient;
  54. }
  55. public string loginApi(string usr, string pwd)
  56. {
  57. ApiClient apiClient = Configuration.Default.ApiClient;
  58. string authHeader = "{"Username":"" + usr + "", "Password":"" + pwd + "", "IntegratorKey":"" + INTEGRATOR_KEY + ""}";
  59. Configuration.Default.AddDefaultHeader("X-DocuSign-Authentication", authHeader);
  60. string accountId = null;
  61. AuthenticationApi authApi = new AuthenticationApi();
  62. LoginInformation loginInfo = authApi.Login();
  63. foreach (LoginAccount loginAcct in loginInfo.LoginAccounts)
  64. {
  65. if (loginAcct.IsDefault == "true")
  66. {
  67. accountId = loginAcct.AccountId;
  68. break;
  69. }
  70. }
  71. if (accountId == null)
  72. {
  73. accountId = loginInfo.LoginAccounts[0].AccountId;
  74. }
  75. return accountId;
  76. }
  77. }
Add Comment
Please, Sign In to add comment