diff options
Diffstat (limited to 'examples/mailsettings/mailsettings.cs')
-rw-r--r-- | examples/mailsettings/mailsettings.cs | 242 |
1 files changed, 242 insertions, 0 deletions
diff --git a/examples/mailsettings/mailsettings.cs b/examples/mailsettings/mailsettings.cs new file mode 100644 index 0000000..8f0c519 --- /dev/null +++ b/examples/mailsettings/mailsettings.cs @@ -0,0 +1,242 @@ +using System; +using SendGrid.Helpers.Mail; +using System.Collections.Generic; + +string _apiKey = Environment.GetEnvironmentVariable("SENDGRID_APIKEY", EnvironmentVariableTarget.User); +dynamic sg = new SendGrid.SendGridAPIClient(_apiKey); + +//////////////////////////////////////////////////////// +// Retrieve all mail settings +// GET /mail_settings + +string queryParams = @"{ + 'limit': 1, + 'offset': 1 +}"; +dynamic response = sg.client.mail_settings.get(queryParams: queryParams); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Update address whitelist mail settings +// PATCH /mail_settings/address_whitelist + +string data = @"{ + 'enabled': true, + 'list': [ + 'email1@example.com', + 'example.com' + ] +}"; +dynamic response = sg.client.mail_settings.address_whitelist.patch(requestBody: data); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Retrieve address whitelist mail settings +// GET /mail_settings/address_whitelist + +dynamic response = sg.client.mail_settings.address_whitelist.get(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Update BCC mail settings +// PATCH /mail_settings/bcc + +string data = @"{ + 'email': 'email@example.com', + 'enabled': false +}"; +dynamic response = sg.client.mail_settings.bcc.patch(requestBody: data); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Retrieve all BCC mail settings +// GET /mail_settings/bcc + +dynamic response = sg.client.mail_settings.bcc.get(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Update bounce purge mail settings +// PATCH /mail_settings/bounce_purge + +string data = @"{ + 'enabled': true, + 'hard_bounces': 5, + 'soft_bounces': 5 +}"; +dynamic response = sg.client.mail_settings.bounce_purge.patch(requestBody: data); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Retrieve bounce purge mail settings +// GET /mail_settings/bounce_purge + +dynamic response = sg.client.mail_settings.bounce_purge.get(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Update footer mail settings +// PATCH /mail_settings/footer + +string data = @"{ + 'enabled': true, + 'html_content': '...', + 'plain_content': '...' +}"; +dynamic response = sg.client.mail_settings.footer.patch(requestBody: data); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Retrieve footer mail settings +// GET /mail_settings/footer + +dynamic response = sg.client.mail_settings.footer.get(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Update forward bounce mail settings +// PATCH /mail_settings/forward_bounce + +string data = @"{ + 'email': 'example@example.com', + 'enabled': true +}"; +dynamic response = sg.client.mail_settings.forward_bounce.patch(requestBody: data); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Retrieve forward bounce mail settings +// GET /mail_settings/forward_bounce + +dynamic response = sg.client.mail_settings.forward_bounce.get(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Update forward spam mail settings +// PATCH /mail_settings/forward_spam + +string data = @"{ + 'email': '', + 'enabled': false +}"; +dynamic response = sg.client.mail_settings.forward_spam.patch(requestBody: data); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Retrieve forward spam mail settings +// GET /mail_settings/forward_spam + +dynamic response = sg.client.mail_settings.forward_spam.get(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Update plain content mail settings +// PATCH /mail_settings/plain_content + +string data = @"{ + 'enabled': false +}"; +dynamic response = sg.client.mail_settings.plain_content.patch(requestBody: data); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Retrieve plain content mail settings +// GET /mail_settings/plain_content + +dynamic response = sg.client.mail_settings.plain_content.get(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Update spam check mail settings +// PATCH /mail_settings/spam_check + +string data = @"{ + 'enabled': true, + 'max_score': 5, + 'url': 'url' +}"; +dynamic response = sg.client.mail_settings.spam_check.patch(requestBody: data); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Retrieve spam check mail settings +// GET /mail_settings/spam_check + +dynamic response = sg.client.mail_settings.spam_check.get(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Update template mail settings +// PATCH /mail_settings/template + +string data = @"{ + 'enabled': true, + 'html_content': '<% body %>' +}"; +dynamic response = sg.client.mail_settings.template.patch(requestBody: data); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Retrieve legacy template mail settings +// GET /mail_settings/template + +dynamic response = sg.client.mail_settings.template.get(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + |