如何在c#中为sendgrid创建webhook?

时间:2015-06-30 12:01:23

标签: c# email http-post sendgrid webhooks

我是使用c#.Net库使用Sendgrid电子邮件的新手。我们的要求要求我们跟踪电子邮件的状态,例如Delivered / Went to Spam / Client打开/报告为垃圾邮件等。通过查看其他用户的文档和答案以及之前的问题,我的理解是没有直接的方法跟踪电子邮件的状态(如结果对象)。

如果有人可以在C#中为我指出一些示例/示例代码或文档/实现,那将非常有用 1)使用发送网格API发送电子邮件时添加唯一参数。我可以使用Guid字符串作为我的参数    我假设我在下面做的事情是正确的。

var myMessage = new SendGridMessage();
var identifiers = new Dictionary<String, String>();
identifiers["Email_ID"] = "Email_ID";
identifiers["Email_Key"] = "9ebccd0d-67c0-4c28-bbf3-83d5bb69f098";
myMessage.AddUniqueArgs(identifiers);           

2)如何使用事件webhooks从http_post获取上面使用的唯一参数的状态,以便我可以将电子邮件与状态相关联。任何示例代码,c#中的文档或对其工作方式的总体了解都将使我开始研究。

感谢您的时间和答案。

1 个答案:

答案 0 :(得分:1)

使用official library that SendGrid provides从C#轻松通过SendGrid发送电子邮件。从你的代码示例来看,你可能已经在使用它 - 好工作。

只要字符串化,唯一参数就应该有效,并且您不会尝试将对象传递给myMessage.AddUniqueArgs

Event Webhook会将JSON数据包发送到您指定的任何URL。如果您在通过SendGrid发送的电子邮件中包含了唯一参数,则会自动将这些参数添加到您从webhook返回的每个事件响应中 - 您也不需要打开任何其他参数来获取参数。

此调用的示例以及SendGrid Documentation.

中的结果响应