The goal of sendgridr is to mail using r with sendgrid service that provides free 100 mail per day forever.
You can install the released version of sendgridr from CRAN with:
install.packages("sendgridr")
You can install the developing version of sendgridr from Github with:
# install.packages("remotes")
remotes::install_github("mrchypark/sendgridr")
You can set api key env value name SENDGRID_API
. auth_check()
function check whether key named SENDGRID_API
is set or not, whether key is dummy or not, whether key works or not. auth_set()
function ask some questions and open browser for create api key, open .Renviron for set SENDGRID_API
value.
auth_check()
auth_set()
Please replace your conditions.
mail() %>%
from("example1@mail.com", "example name for display") %>%
to("example2@mail.com", "example name for display 2") %>%
subject("test mail title") %>%
body("hello world!") %>%
## attachments is optional
attachments("report.html") %>%
send()
mail()
function create sg_mail class object and also list. sg_mail class only has print method.
sendproject1 <- mail()
class(sendproject1)
#> [1] "sg_mail" "list"
sendproject1
#> SendGrid Mail -
#> x from : (required)
#> x to : (required)
#> x subject: (required)
#> x content: (required)
#> v attach : (optional)
to, from, subject, body are required. cc, bcc, attachments are optional.
to, cc, bcc, attachments functions are able to set multi values.
library(sendgridr)
mail() %>%
from("example1@mail.com", "toexam@mail.com") %>%
to("toexam1@mail.com", "1 exam") %>%
to("toexam2@mail.com", "2 exam") %>%
to("toexam3@mail.com", "3 exam") %>%
subject("test mail title") %>%
body("hello world!")
#> SendGrid Mail -
#> v from :
#> v to : cnt[3] 1 exam <toexam1@mail.com>, 2 exam <toexam2 ...
#> v subject: nchr[15] test mail title
#> v content: nchr[12] hello world!
#> v attach : (optional)
Please note that the sendgridr project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.
Thanks goes to these wonderful people (emoji key):
Keon-Woong Moon 🐛 |
Jinseob Kim 🤔 |
Carl Ganz 🤔 |
peter-bastian 🐛 |
Curtis Petersen 🤔 👀 |
Amanda Dobbyn 💻 |
Emanuele Guidotti 📖 ⚠️ 🐛 💻 |
This project follows the all-contributors specification. Contributions of any kind welcome!