Пример #1
0
        public async Task <CreateTemplateResponse> Create(Template template)
        {
            var request = new Request
            {
                Url    = $"api/{client.Version}/templates",
                Method = "POST",
                Data   = dataMapper.ToDictionary(template)
            };

            var response = await requestSender.Send(request);

            if (response.StatusCode != HttpStatusCode.OK)
            {
                throw new ResponseException(response);
            }

            var results = JsonConvert.DeserializeObject <dynamic>(response.Content).results;

            return(new CreateTemplateResponse()
            {
                Id = results.id,
                ReasonPhrase = response.ReasonPhrase,
                StatusCode = response.StatusCode,
                Content = response.Content
            });
        }
Пример #2
0
        public async Task <SendTransmissionResponse> Send(Transmission transmission)
        {
            var request = new Request
            {
                Url    = $"api/{client.Version}/transmissions",
                Method = "POST",
                Data   = dataMapper.ToDictionary(transmission)
            };

            var response = await requestSender.Send(request);

            if (response.StatusCode != HttpStatusCode.OK)
            {
                throw new ResponseException(response);
            }

            var results = Jsonification.DeserializeObject <JsonSendResponse>(response.Content).Results;

            return(new SendTransmissionResponse()
            {
                Id = results.Id,
                ReasonPhrase = response.ReasonPhrase,
                StatusCode = response.StatusCode,
                Content = response.Content,
                TotalAcceptedRecipients = results.TotalAcceptedRecipients,
                TotalRejectedRecipients = results.TotalRejectedRecipients,
            });
        }
Пример #3
0
        public async Task <SendRecipientListsResponse> Create(RecipientList recipientList)
        {
            var request = new Request
            {
                Url    = $"api/{client.Version}/recipient-lists?num_rcpt_errors=3",
                Method = "POST",
                Data   = dataMapper.ToDictionary(recipientList)
            };

            var response = await requestSender.Send(request);

            if (response.StatusCode != HttpStatusCode.OK)
            {
                throw new ResponseException(response);
            }

            var results = JsonConvert.DeserializeObject <dynamic>(response.Content).results;

            return(new SendRecipientListsResponse()
            {
                Id = results.id,
                TotalAcceptedRecipients = results.total_accepted_recipients,
                TotalRejectedRecipients = results.total_rejected_recipients,
                Name = results.name,
                Content = response.Content,
                StatusCode = response.StatusCode,
                ReasonPhrase = response.ReasonPhrase
            });
        }
        public async Task <UpdateRecipientListResponse> Update(RecipientList recipientList)
        {
            var request = new Request
            {
                Url    = $"api/{client.Version}/recipient-lists/{recipientList.Id}",
                Method = "PUT",
                Data   = dataMapper.ToDictionary(recipientList)
            };

            var response = await requestSender.Send(request);

            if (new[] { HttpStatusCode.OK, HttpStatusCode.NotFound }.Contains(response.StatusCode) == false)
            {
                throw new ResponseException(response);
            }

            return(new UpdateRecipientListResponse()
            {
                ReasonPhrase = response.ReasonPhrase,
                StatusCode = response.StatusCode,
                Content = response.Content,
            });
        }