diff options
author | Elmer Thomas <elmer@thinkingserious.com> | 2016-06-01 10:50:02 -0700 |
---|---|---|
committer | Elmer Thomas <elmer@thinkingserious.com> | 2016-06-01 10:50:02 -0700 |
commit | 4cde4e7ee0329c179fa8745655a602521f1c2dd8 (patch) | |
tree | b1cf20f427ef68c644f6c0cd724b72440d53728d /examples/asm/asm.cs | |
parent | 5e5c58f4245647611eb33e03d26d032b7ec2b26e (diff) | |
download | sendgrid-csharp-4cde4e7ee0329c179fa8745655a602521f1c2dd8.zip sendgrid-csharp-4cde4e7ee0329c179fa8745655a602521f1c2dd8.tar.gz sendgrid-csharp-4cde4e7ee0329c179fa8745655a602521f1c2dd8.tar.bz2 |
Added examples for v3 Web API endpoints
Diffstat (limited to 'examples/asm/asm.cs')
-rw-r--r-- | examples/asm/asm.cs | 138 |
1 files changed, 138 insertions, 0 deletions
diff --git a/examples/asm/asm.cs b/examples/asm/asm.cs new file mode 100644 index 0000000..b63ee7b --- /dev/null +++ b/examples/asm/asm.cs @@ -0,0 +1,138 @@ +using System; +using SendGrid.Helpers.Mail; +using System.Collections.Generic; +using System.Net; + +string _apiKey = Environment.GetEnvironmentVariable("SENDGRID_APIKEY", EnvironmentVariableTarget.User); +dynamic sg = new SendGrid.SendGridAPIClient(_apiKey); + +################################################## +# Create a Group # +# POST /asm/groups # + +string data = @"{ + 'description': 'A group description', + 'is_default': false, + 'name': 'A group name' +}"; +dynamic response = sg.client.asm.groups.post(requestBody: data); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result); +Console.WriteLine(response.ResponseHeaders.ToString()); + +################################################## +# Retrieve all suppression groups associated with the user. # +# GET /asm/groups # + +dynamic response = sg.client.asm.groups.get(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result); +Console.WriteLine(response.ResponseHeaders.ToString()); + +################################################## +# Update a suppression group. # +# PATCH /asm/groups/{group_id} # + +string data = @"{ + 'description': 'Suggestions for items our users might like.', + 'id': 103, + 'name': 'Item Suggestions' +}"; +var group_id = "test_url_param"; +dynamic response = sg.client.asm.groups._(group_id).patch(requestBody: data); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result); +Console.WriteLine(response.ResponseHeaders.ToString()); + +################################################## +# Get information on a single suppression group. # +# GET /asm/groups/{group_id} # + +var group_id = "test_url_param"; +dynamic response = sg.client.asm.groups._(group_id).get(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result); +Console.WriteLine(response.ResponseHeaders.ToString()); + +################################################## +# Delete a suppression group. # +# DELETE /asm/groups/{group_id} # + +var group_id = "test_url_param"; +dynamic response = sg.client.asm.groups._(group_id).delete(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result); +Console.WriteLine(response.ResponseHeaders.ToString()); + +################################################## +# Add suppressions to a suppression group # +# POST /asm/groups/{group_id}/suppressions # + +string data = @"{ + 'recipient_emails': [ + 'test1@example.com', + 'test2@example.com' + ] +}"; +var group_id = "test_url_param"; +dynamic response = sg.client.asm.groups._(group_id).suppressions.post(requestBody: data); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result); +Console.WriteLine(response.ResponseHeaders.ToString()); + +################################################## +# Retrieve all suppressions for a suppression group # +# GET /asm/groups/{group_id}/suppressions # + +var group_id = "test_url_param"; +dynamic response = sg.client.asm.groups._(group_id).suppressions.get(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result); +Console.WriteLine(response.ResponseHeaders.ToString()); + +################################################## +# Delete a suppression from a suppression group # +# DELETE /asm/groups/{group_id}/suppressions/{email} # + +var group_id = "test_url_param"; +var email = "test_url_param"; +dynamic response = sg.client.asm.groups._(group_id).suppressions._(email).delete(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result); +Console.WriteLine(response.ResponseHeaders.ToString()); + +################################################## +# Add recipient addresses to the global suppression group. # +# POST /asm/suppressions/global # + +string data = @"{ + 'recipient_emails': [ + 'test1@example.com', + 'test2@example.com' + ] +}"; +dynamic response = sg.client.asm.suppressions.global.post(requestBody: data); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result); +Console.WriteLine(response.ResponseHeaders.ToString()); + +################################################## +# Retrieve a Global Suppression # +# GET /asm/suppressions/global/{email} # + +var email = "test_url_param"; +dynamic response = sg.client.asm.suppressions.global._(email).get(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result); +Console.WriteLine(response.ResponseHeaders.ToString()); + +################################################## +# Delete a Global Suppression # +# DELETE /asm/suppressions/global/{email} # + +var email = "test_url_param"; +dynamic response = sg.client.asm.suppressions.global._(email).delete(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result); +Console.WriteLine(response.ResponseHeaders.ToString()); + |