private static void UpdateRecipients(CreateEnvelopeRequestModel request, IEnvelopesApi envelopesApi, string accountId) { var exisitingResipients = envelopesApi.ListRecipients(accountId, request.EnvelopeInfo.EnvelopeID); envelopesApi.DeleteRecipients(accountId, request.EnvelopeInfo.EnvelopeID, exisitingResipients); var newRecipients = new Recipients { CarbonCopies = ParseCarbonCopy(request.CarbonRecipients, request.EnvelopeInfo).ToList(), Signers = ParseSigners(request.Recipients, request.EnvelopeInfo).ToList() }; envelopesApi.UpdateRecipients(accountId, request.EnvelopeInfo.EnvelopeID, newRecipients); }
private static Doc GetDocument(CreateEnvelopeRequestModel request) { var fileExtension = request.FileInfo.OriginalName .Substring(request.FileInfo.OriginalName .IndexOf(".", StringComparison.Ordinal) + 1); return(new Doc { DocumentBase64 = Convert.ToBase64String(request.FileInfo.BinData), Name = request.FileInfo.FullName, DocumentId = request.EnvelopeInfo.EnvelopeInfoID.ToString(), FileExtension = fileExtension }); }
private static EnvelopeDefinition CreateEnvelopeDefinition(Doc document, CreateEnvelopeRequestModel request) { return(new EnvelopeDefinition { Documents = new List <Doc> { document }, EmailSubject = request.EnvelopeInfo.Theme, EmailBlurb = request.EnvelopeInfo.MessageBody, Status = EnvelopeStatus.DocuSign.Created, Notification = CreateNotification(request.EnvelopeInfo), Recipients = new Recipients { CarbonCopies = ParseCarbonCopy(request.CarbonRecipients, request.EnvelopeInfo).ToList(), Signers = ParseSigners(request.Recipients, request.EnvelopeInfo).ToList() } }); }
private static void UpdateDocumets(CreateEnvelopeRequestModel request, IEnvelopesApi envelopesApi, string accountId) { var list = envelopesApi.ListDocuments(accountId, request.EnvelopeInfo.EnvelopeID); var def = new EnvelopeDefinition { Documents = new List <Doc>() }; foreach (var doc in list.EnvelopeDocuments) { def.Documents.Add(new Doc { DocumentId = doc.DocumentId }); } envelopesApi.DeleteDocuments(accountId, request.EnvelopeInfo.EnvelopeID, def); def.Documents = new List <Doc> { GetDocument(request) }; envelopesApi.UpdateDocuments(accountId, request.EnvelopeInfo.EnvelopeID, def); }
/// <summary> /// Used for creating request for updating envelope. /// <param name="request">Instance of the<see cref="CreateEnvelopeRequestModel"></see></param> /// </summary> public UpdateEnvelopeResponseModel UpdateEnvelope(CreateEnvelopeRequestModel request) { return(TryExecute(UpdateRequestFunc(), request)); }
/// <summary> /// Used for creating request for new envelope. /// <param name="request">Instance of the<see cref="CreateEnvelopeRequestModel"></see></param> /// </summary> public CreateEnvelopeResponseModel CreateEnvelope(CreateEnvelopeRequestModel request) { return(TryExecute(SendRequestFunc(), request)); }