48 releases

0.19.2 Jul 20, 2023
0.19.0 May 11, 2023
0.18.1 Sep 25, 2022
0.17.4 Sep 28, 2021
0.1.1 Nov 29, 2015

#234 in Email

Download history 4487/week @ 2023-06-06 4603/week @ 2023-06-13 5180/week @ 2023-06-20 4877/week @ 2023-06-27 4355/week @ 2023-07-04 4350/week @ 2023-07-11 4219/week @ 2023-07-18 4817/week @ 2023-07-25 5077/week @ 2023-08-01 5091/week @ 2023-08-08 4498/week @ 2023-08-15 5623/week @ 2023-08-22 4634/week @ 2023-08-29 5004/week @ 2023-09-05 4496/week @ 2023-09-12 4202/week @ 2023-09-19

19,285 downloads per month
Used in 7 crates (4 directly)

MIT license

884 lines


Unofficial Rust library for the SendGrid API.

This crate requires Rust 1.15 or higher as it uses a crate that has a custom derive implementation.

sendgrid-rs implements all of the functionality of other supported SendGrid client libraries. To use sendgrid-rs you must first create a SendGrid account and generate an API key. To create an API key for your SendGrid account, use the account management interface or see the SendGrid API Documentation.

sendgrid-rs is available on crates.io and can be included in your Cargo.toml as follows:

sendgrid = "X.X.X"

Build Dependencies

This library utilises reqwest. Follow the instructions on the reqwest README in order to enable sending HTTPS requests to the SendGrid API.


You can take advantage of a couple features for the crate. To enable the asynchronous send function, you can use the async flag. To enable the rustls TLS feature, use the rustls flag.


An example of using this library can be found in the examples directory. This example code expects to find your SendGrid API key in the process environment. In shells such as Bash or ZSH this can be set as follows:

export SENDGRID_API_KEY="SG.my.api.key"



Please don't hesitate to contact me at the email listed in my profile. I will try to help as quickly as I can. If you would like to contribute, contact me as well.


Thanks to meehow for their contributions.

Thanks to richo for their improvements to the V2 API.




~308K SLoC