Skip to content

sendgrid/smtpapi-csharp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Travis Badge

This module helps build SendGrid's SMTP API headers.

Announcements

All updates to this module is documented in our CHANGELOG.

Installation

First, get your free SendGrid account here.

Next, update your Environment (user space) with your SENDGRID_USERNAME and SENDGRID_PASSWORD.

To use SendGrid.SmtpApi in your C# project, you can either download the SendGrid C# .NET libraries directly from our Github repository or, if you have the NuGet package manager installed, you can grab them automatically.

PM> Install-Package SendGrid.SmtpApi

Add the following namespace to use the library:

using SendGrid.CSharp.HTTP.Client;

Once you have the library properly referenced in your project, you can include calls to them in your code.

For a sample implementation, check the Example

Dependencies

  • The SendGrid Service, starting at the free level)

Quick Start

using SendGrid.CSharp.HTTP.Client; client.Host = "smtp.sendgrid.net"; client.Timeout = 10000; client.DeliveryMethod = SmtpDeliveryMethod.Network; client.UseDefaultCredentials = false; String sendgrid_username = Environment.GetEnvironmentVariable("SENDGRID_USERNAME", EnvironmentVariableTarget.User); String sendgrid_password = Environment.GetEnvironmentVariable("SENDGRID_PASSWORD", EnvironmentVariableTarget.User); client.Credentials = new System.Net.NetworkCredential(sendgrid_username,sendgrid_password); MailMessage mail = new MailMessage(); mail.To.Add(new MailAddress("test@example.com")); mail.From = "test@example.com"; mail.Subject = "this is a test email."; mail.Body = "this is my test email body"; // add the custom header that we built above mail.Headers.Add( "X-SMTPAPI", xmstpapiJson ); client.SendAsync(mail, null);

If you want to add multiple recipients to the X-SMTPAPI header for a mail merge type send, you can do something like the following:

var header = new Header(); var recipients = new List<String> {"test1@example.com", "test2@example.com", "test3@example.com"}; header.SetTo(recipients); var subs = new List<String> {"A","B","C"}; header.AddSubstitution("%name%", subs); var mail = new MailMessage { From = new MailAddress("test@example.com"), Subject = "Welcome", Body = "Hi there %name%" }; // add the custom header that we built above mail.Headers.Add("X-SMTPAPI", header.JsonString());

Usage

Roadmap

If you are intersted in the future direction of this project, please take a look at our milestones. We would love to hear your feedback.

How to Contribute

We encourage contribution to our projects, please see our CONTRIBUTING guide for details.

Quick links:

About

smtpapi-csharp is guided and supported by the SendGrid Developer Experience Team.

smtpapi-csharp is maintained and funded by SendGrid, Inc. The names and logos for smtpapi-csharp are trademarks of SendGrid, Inc.

![SendGrid Logo] (https://uiux.s3.amazonaws.com/2016-logos/email-logo%402x.png)

About

SendGrid's smtpapi library in C#

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 33