summaryrefslogtreecommitdiffstats
path: root/examples/ips/ips.cs
diff options
context:
space:
mode:
authorElmer Thomas <elmer@thinkingserious.com>2016-06-01 10:50:02 -0700
committerElmer Thomas <elmer@thinkingserious.com>2016-06-01 10:50:02 -0700
commit4cde4e7ee0329c179fa8745655a602521f1c2dd8 (patch)
treeb1cf20f427ef68c644f6c0cd724b72440d53728d /examples/ips/ips.cs
parent5e5c58f4245647611eb33e03d26d032b7ec2b26e (diff)
downloadsendgrid-csharp-4cde4e7ee0329c179fa8745655a602521f1c2dd8.zip
sendgrid-csharp-4cde4e7ee0329c179fa8745655a602521f1c2dd8.tar.gz
sendgrid-csharp-4cde4e7ee0329c179fa8745655a602521f1c2dd8.tar.bz2
Added examples for v3 Web API endpoints
Diffstat (limited to 'examples/ips/ips.cs')
-rw-r--r--examples/ips/ips.cs162
1 files changed, 162 insertions, 0 deletions
diff --git a/examples/ips/ips.cs b/examples/ips/ips.cs
new file mode 100644
index 0000000..9b9bfe0
--- /dev/null
+++ b/examples/ips/ips.cs
@@ -0,0 +1,162 @@
+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);
+
+##################################################
+# Retrieve all IP addresses #
+# GET /ips #
+
+string queryParams = @"{
+ 'exclude_whitelabels': 'true',
+ 'ip': 'test_string',
+ 'limit': 1,
+ 'offset': 1,
+ 'subuser': 'test_string'
+}";
+dynamic response = sg.client.ips.get(queryParams: queryParams);
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result);
+Console.WriteLine(response.ResponseHeaders.ToString());
+
+##################################################
+# Retrieve all assigned IPs #
+# GET /ips/assigned #
+
+dynamic response = sg.client.ips.assigned.get();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result);
+Console.WriteLine(response.ResponseHeaders.ToString());
+
+##################################################
+# Create an IP pool. #
+# POST /ips/pools #
+
+string data = @"{
+ 'name': 'marketing'
+}";
+dynamic response = sg.client.ips.pools.post(requestBody: data);
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result);
+Console.WriteLine(response.ResponseHeaders.ToString());
+
+##################################################
+# Retrieve all IP pools. #
+# GET /ips/pools #
+
+dynamic response = sg.client.ips.pools.get();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result);
+Console.WriteLine(response.ResponseHeaders.ToString());
+
+##################################################
+# Update an IP pools name. #
+# PUT /ips/pools/{pool_name} #
+
+string data = @"{
+ 'name': 'new_pool_name'
+}";
+var pool_name = "test_url_param";
+dynamic response = sg.client.ips.pools._(pool_name).put(requestBody: data);
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result);
+Console.WriteLine(response.ResponseHeaders.ToString());
+
+##################################################
+# Retrieve all IPs in a specified pool. #
+# GET /ips/pools/{pool_name} #
+
+var pool_name = "test_url_param";
+dynamic response = sg.client.ips.pools._(pool_name).get();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result);
+Console.WriteLine(response.ResponseHeaders.ToString());
+
+##################################################
+# Delete an IP pool. #
+# DELETE /ips/pools/{pool_name} #
+
+var pool_name = "test_url_param";
+dynamic response = sg.client.ips.pools._(pool_name).delete();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result);
+Console.WriteLine(response.ResponseHeaders.ToString());
+
+##################################################
+# Add an IP address to a pool #
+# POST /ips/pools/{pool_name}/ips #
+
+string data = @"{
+ 'ip': '0.0.0.0'
+}";
+var pool_name = "test_url_param";
+dynamic response = sg.client.ips.pools._(pool_name).ips.post(requestBody: data);
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result);
+Console.WriteLine(response.ResponseHeaders.ToString());
+
+##################################################
+# Remove an IP address from a pool. #
+# DELETE /ips/pools/{pool_name}/ips/{ip} #
+
+var pool_name = "test_url_param";
+var ip = "test_url_param";
+dynamic response = sg.client.ips.pools._(pool_name).ips._(ip).delete();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result);
+Console.WriteLine(response.ResponseHeaders.ToString());
+
+##################################################
+# Add an IP to warmup #
+# POST /ips/warmup #
+
+string data = @"{
+ 'ip': '0.0.0.0'
+}";
+dynamic response = sg.client.ips.warmup.post(requestBody: data);
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result);
+Console.WriteLine(response.ResponseHeaders.ToString());
+
+##################################################
+# Retrieve all IPs currently in warmup #
+# GET /ips/warmup #
+
+dynamic response = sg.client.ips.warmup.get();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result);
+Console.WriteLine(response.ResponseHeaders.ToString());
+
+##################################################
+# Retrieve warmup status for a specific IP address #
+# GET /ips/warmup/{ip_address} #
+
+var ip_address = "test_url_param";
+dynamic response = sg.client.ips.warmup._(ip_address).get();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result);
+Console.WriteLine(response.ResponseHeaders.ToString());
+
+##################################################
+# Remove an IP from warmup #
+# DELETE /ips/warmup/{ip_address} #
+
+var ip_address = "test_url_param";
+dynamic response = sg.client.ips.warmup._(ip_address).delete();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result);
+Console.WriteLine(response.ResponseHeaders.ToString());
+
+##################################################
+# Retrieve all IP pools an IP address belongs to #
+# GET /ips/{ip_address} #
+
+var ip_address = "test_url_param";
+dynamic response = sg.client.ips._(ip_address).get();
+Console.WriteLine(response.StatusCode);
+Console.WriteLine(response.ResponseBody.ReadAsStringAsync().Result);
+Console.WriteLine(response.ResponseHeaders.ToString());
+