summaryrefslogtreecommitdiffstats
path: root/examples/suppression/suppression.cs
diff options
context:
space:
mode:
authorElmer Thomas <elmer@thinkingserious.com>2016-06-14 10:22:39 -0700
committerElmer Thomas <elmer@thinkingserious.com>2016-06-14 10:22:39 -0700
commit1e2111f09142552d7dde4e18f116835dec91ed86 (patch)
tree1de111c549454450ce5a45aa129726132db217b5 /examples/suppression/suppression.cs
parent5ee89f857c09d79e507483bd807727bb6c4d7057 (diff)
parent2e52cfb07decb924a961b5c75ece1b9e79ab973c (diff)
downloadsendgrid-csharp-7.0.1.zip
sendgrid-csharp-7.0.1.tar.gz
sendgrid-csharp-7.0.1.tar.bz2
Merge branch 'v3release'v7.0.1v7.0.0
Diffstat (limited to 'examples/suppression/suppression.cs')
-rw-r--r--examples/suppression/suppression.cs244
1 files changed, 244 insertions, 0 deletions
diff --git a/examples/suppression/suppression.cs b/examples/suppression/suppression.cs
new file mode 100644
index 0000000..6cd819a
--- /dev/null
+++ b/examples/suppression/suppression.cs
@@ -0,0 +1,244 @@
+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 blocks
+// GET /suppression/blocks
+
+string queryParams = @"{
+ 'end_time': 1,
+ 'limit': 1,
+ 'offset': 1,
+ 'start_time': 1
+}";
+dynamic response = sg.client.suppression.blocks.get(queryParams: queryParams);
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Delete blocks
+// DELETE /suppression/blocks
+
+string data = @"{
+ 'delete_all': false,
+ 'emails': [
+ 'example1@example.com',
+ 'example2@example.com'
+ ]
+}";
+dynamic response = sg.client.suppression.blocks.delete(requestBody: data);
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Retrieve a specific block
+// GET /suppression/blocks/{email}
+
+var email = "test_url_param";
+dynamic response = sg.client.suppression.blocks._(email).get();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Delete a specific block
+// DELETE /suppression/blocks/{email}
+
+var email = "test_url_param";
+dynamic response = sg.client.suppression.blocks._(email).delete();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Retrieve all bounces
+// GET /suppression/bounces
+
+string queryParams = @"{
+ 'end_time': 0,
+ 'start_time': 0
+}";
+dynamic response = sg.client.suppression.bounces.get(queryParams: queryParams);
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Delete bounces
+// DELETE /suppression/bounces
+
+string data = @"{
+ 'delete_all': true,
+ 'emails': [
+ 'example@example.com',
+ 'example2@example.com'
+ ]
+}";
+dynamic response = sg.client.suppression.bounces.delete(requestBody: data);
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Retrieve a Bounce
+// GET /suppression/bounces/{email}
+
+var email = "test_url_param";
+dynamic response = sg.client.suppression.bounces._(email).get();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Delete a bounce
+// DELETE /suppression/bounces/{email}
+
+string queryParams = @"{
+ 'email_address': 'example@example.com'
+}";
+var email = "test_url_param";
+dynamic response = sg.client.suppression.bounces._(email).delete(queryParams: queryParams);
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Retrieve all invalid emails
+// GET /suppression/invalid_emails
+
+string queryParams = @"{
+ 'end_time': 1,
+ 'limit': 1,
+ 'offset': 1,
+ 'start_time': 1
+}";
+dynamic response = sg.client.suppression.invalid_emails.get(queryParams: queryParams);
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Delete invalid emails
+// DELETE /suppression/invalid_emails
+
+string data = @"{
+ 'delete_all': false,
+ 'emails': [
+ 'example1@example.com',
+ 'example2@example.com'
+ ]
+}";
+dynamic response = sg.client.suppression.invalid_emails.delete(requestBody: data);
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Retrieve a specific invalid email
+// GET /suppression/invalid_emails/{email}
+
+var email = "test_url_param";
+dynamic response = sg.client.suppression.invalid_emails._(email).get();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Delete a specific invalid email
+// DELETE /suppression/invalid_emails/{email}
+
+var email = "test_url_param";
+dynamic response = sg.client.suppression.invalid_emails._(email).delete();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Retrieve a specific spam report
+// GET /suppression/spam_report/{email}
+
+var email = "test_url_param";
+dynamic response = sg.client.suppression.spam_report._(email).get();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Delete a specific spam report
+// DELETE /suppression/spam_report/{email}
+
+var email = "test_url_param";
+dynamic response = sg.client.suppression.spam_report._(email).delete();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Retrieve all spam reports
+// GET /suppression/spam_reports
+
+string queryParams = @"{
+ 'end_time': 1,
+ 'limit': 1,
+ 'offset': 1,
+ 'start_time': 1
+}";
+dynamic response = sg.client.suppression.spam_reports.get(queryParams: queryParams);
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Delete spam reports
+// DELETE /suppression/spam_reports
+
+string data = @"{
+ 'delete_all': false,
+ 'emails': [
+ 'example1@example.com',
+ 'example2@example.com'
+ ]
+}";
+dynamic response = sg.client.suppression.spam_reports.delete(requestBody: data);
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+
+////////////////////////////////////////////////////////
+// Retrieve all global suppressions
+// GET /suppression/unsubscribes
+
+string queryParams = @"{
+ 'end_time': 1,
+ 'limit': 1,
+ 'offset': 1,
+ 'start_time': 1
+}";
+dynamic response = sg.client.suppression.unsubscribes.get(queryParams: queryParams);
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.Body.ReadAsStringAsync().Result);
+Console.WriteLine(response.Headers.ToString());
+Console.ReadLine();
+