diff options
Diffstat (limited to 'examples/accesssettings/accesssettings.cs')
-rw-r--r-- | examples/accesssettings/accesssettings.cs | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/examples/accesssettings/accesssettings.cs b/examples/accesssettings/accesssettings.cs new file mode 100644 index 0000000..15fe8b0 --- /dev/null +++ b/examples/accesssettings/accesssettings.cs @@ -0,0 +1,92 @@ +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 recent access attempts +// GET /access_settings/activity + +string queryParams = @"{ + 'limit': 1 +}"; +dynamic response = sg.client.access_settings.activity.get(queryParams: queryParams); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Add one or more IPs to the whitelist +// POST /access_settings/whitelist + +string data = @"{ + 'ips': [ + { + 'ip': '192.168.1.1' + }, + { + 'ip': '192.*.*.*' + }, + { + 'ip': '192.168.1.3/32' + } + ] +}"; +dynamic response = sg.client.access_settings.whitelist.post(requestBody: data); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Retrieve a list of currently whitelisted IPs +// GET /access_settings/whitelist + +dynamic response = sg.client.access_settings.whitelist.get(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Remove one or more IPs from the whitelist +// DELETE /access_settings/whitelist + +string data = @"{ + 'ids': [ + 1, + 2, + 3 + ] +}"; +dynamic response = sg.client.access_settings.whitelist.delete(requestBody: data); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Retrieve a specific whitelisted IP +// GET /access_settings/whitelist/{rule_id} + +var rule_id = "test_url_param"; +dynamic response = sg.client.access_settings.whitelist._(rule_id).get(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + +//////////////////////////////////////////////////////// +// Remove a specific IP from the whitelist +// DELETE /access_settings/whitelist/{rule_id} + +var rule_id = "test_url_param"; +dynamic response = sg.client.access_settings.whitelist._(rule_id).delete(); +Console.WriteLine(response.StatusCode); +Console.WriteLine(response.Body.ReadAsStringAsync().Result); +Console.WriteLine(response.Headers.ToString()); +Console.ReadLine(); + |