blob: 57e59a03b2c43ef946024c807fc714a877f2673e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
|
using System;
using System.Collections.Generic;
using System.Net;
using System.Net.Http;
using System.Net.Mail;
using Newtonsoft.Json.Linq;
using SendGrid.Resources;
namespace Example
{
internal class Program
{
// this code is used for the SMTPAPI examples
private static void Main()
{
String apiKey = Environment.GetEnvironmentVariable("SENDGRID_APIKEY", EnvironmentVariableTarget.User);
var client = new SendGrid.Client(apiKey);
string _api_key_id;
// GET
HttpResponseMessage responseGet = client.ApiKeys.Get();
Console.WriteLine(responseGet.StatusCode);
Console.WriteLine(responseGet.Content.ReadAsStringAsync().Result);
Console.WriteLine("These are your current API Keys. Press any key to continue.");
Console.ReadKey();
// POST
HttpResponseMessage responsePost = client.ApiKeys.Post("CSharpTestKey");
string rawString = responsePost.Content.ReadAsStringAsync().Result;
dynamic jsonObject = JObject.Parse(rawString);
_api_key_id = jsonObject.api_key_id.ToString();
Console.WriteLine(responsePost.StatusCode);
Console.WriteLine(responsePost.Content.ReadAsStringAsync().Result);
Console.WriteLine("API Key created. Press any key to continue.");
Console.ReadKey();
// PATCH
HttpResponseMessage responsePatch = client.ApiKeys.Patch(_api_key_id, "CSharpTestKeyPatched");
Console.WriteLine(responsePatch.StatusCode);
Console.WriteLine(responsePatch.Content.ReadAsStringAsync().Result);
Console.WriteLine("API Key patched. Press any key to continue.");
Console.ReadKey();
// DELETE
Console.WriteLine("Deleting API Key, please wait.");
client.ApiKeys.Delete(_api_key_id);
HttpResponseMessage responseFinal = client.ApiKeys.Get();
Console.WriteLine(responseFinal.StatusCode);
Console.WriteLine(responseFinal.Content.ReadAsStringAsync().Result);
Console.WriteLine("API Key Deleted, press any key to end");
Console.ReadKey();
// SEND EMAIL
/*
// Create the email object first, then add the properties.
var myMessage = new SendGrid.SendGridMessage();
myMessage.AddTo("elmer.thomas@sendgrid.com");
myMessage.From = new MailAddress("dx@sendgrid.com", "Elmer Thomas");
myMessage.Subject = "Testing the SendGrid Library";
myMessage.Text = "Hello World! %tag%";
var subs = new List<String> { "私は%type%ラーメンが大好き" };
myMessage.AddSubstitution("%tag%",subs);
myMessage.AddSection("%type%", "とんこつ");
SendAsync(myMessage);
*/
}
private static async void SendAsync(SendGrid.SendGridMessage message)
{
// Create credentials, specifying your user name and password.
var credentials = new NetworkCredential("<sendgrid_username>", "<sendgrid_password>");
// Create a Web transport for sending email.
var transportWeb = new SendGrid.Web(credentials);
// Send the email.
try
{
await transportWeb.DeliverAsync(message);
Console.WriteLine("Sent!");
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
}
|