Skip to content

aronium/mailgun-wrapper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Aronium Mailgun Wrapper

Mailgun wrapper written in C#.

Wrapper is using Builder pattern for easy chaining and creating Mailgun requests.

Getting Started

Before you start, make sure you read Mailgun documentation at Mailgun API Reference

Prerequisites

Project is using .NET Framework 4.5

The following dependencies are managed using NuGet packages:

  • RestSharp
  • Newtonsoft.Json

Installing

Clone repo or download a ZIP file with source files and open MailgunWrapper.sln in Visual Studio.

First project build will update NuGet dependencies automatically.

Usage examples

Below is the list of commonly used operations.

Sending email

// Method will send a simple email to specified recipient
var request = MailgunResourceRequest.Builder
                .ForSendMessage()
                .From("Aronium <me@aronium.com>")
                .To("mail@example.com")
                .Subject("Hi")
                .Text("It is I, Leclerc!")
                .Build();

var response = new MailgunService().GetResponse<MailgunSendEmailResponse>(request);
        

Read events

// Method will get all Unsubscribed and Failed (e.g. Bounced) events from day ago
var request = MailgunResourceRequest.Builder
                .ForEvents(MailGunEventType.Unsubscribed | MailGunEventType.Failed)
                .Begin(DateTime.Now.AddDays(-1))
                .Limit(10)
                .Build();

var response = new MailgunService().GetResponse<MailgunEventCollection>(request);        

List all unsubscriptions

var request = MailgunResourceRequest.Builder
                .ForUnsubscribes()
                .Build();

var response = new MailgunService().GetResponse<MailgunEmailAddressCollection>(request);

Check unsubscribe emails

var request = MailgunResourceRequest.Builder
                .ForUnsubscribes("unsubsribed@example.com")
                .Build();

var response = new MailgunService().GetResponse<MailgunEmailAddress>(request);

Authors

See the list of contributors who participated in this project.

License

This project is licensed under the MIT License

Releases

No releases published

Packages

No packages published

Languages