Skip to content

mrchypark/sendgridr

Repository files navigation

sendgridr

Lifecycle: experimental R-CMD-check send-test CRAN status runiverse-name runiverse-package metacran downloads Downloads

The goal of sendgridr is to mail using r with sendgrid service that provides free 100 mail per day forever.

Installation

# CRAN version
install.packages("sendgridr")

# Dev version
install.packages("sendgridr", repos = "https://mrchypark.r-universe.dev")

Set API key for authentication

You can set api key using auth_set() function. Also auth_check() function check api key works.

auth_check()
auth_set()

Using with Shiny Apps

For non-interactive environments like Shiny, you can provide the SendGrid API key via the SENDGRID_API_KEY environment variable. For example:

Sys.setenv(SENDGRID_API_KEY = "YOUR_API_KEY")
library(sendgridr)

Send mail

Example code

Please replace your conditions.

mail() |>
  from("[email protected]", "example name for display") |>
  to("[email protected]", "example name for display 2") |>
  subject("test mail title") |>
  body("hello world!")  |>
  ## attachments is optional
  attachments("report.html") |>
  send()

sg_mail class

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 - 
#> ✖   from   : (required)
#> ✖   to     : (required)
#> ✖   subject: (required)
#> ✖   content: (required)
#> ✔   attach : (optional)

to, from, subject, body are required. cc, bcc, attachments are optional.

multi- setting using inline

to, cc, bcc, attachments functions are able to set multi values.

library(sendgridr)
mail() |>
  from("[email protected]", "[email protected]") |>
  to("[email protected]", "1 exam") |>
  to("[email protected]", "2 exam") |>
  to("[email protected]", "3 exam") |>
  subject("test mail title") |>
  body("hello world!")
#> SendGrid Mail -
#> ✔   from   : [email protected] <[email protected]>
#> ✔   to     : cnt[3] 1 exam <[email protected]>, 2 exam <toexam2 ...
#> ✔   subject: nchr[15] test mail title
#> ✔   content: nchr[12] hello world!
#> ✔   attach : (optional)

Code of Conduct

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.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Keon-Woong Moon
Keon-Woong Moon

🐛
Jinseob Kim
Jinseob Kim

🤔
Carl Ganz
Carl Ganz

🤔
peter-bastian
peter-bastian

🐛
Curtis Petersen
Curtis Petersen

🤔 👀
Amanda Dobbyn
Amanda Dobbyn

💻
Emanuele Guidotti
Emanuele Guidotti

📖 ⚠️ 🐛 💻
Antoine Languillaume
Antoine Languillaume

🐛 💻

This project follows the all-contributors specification. Contributions of any kind welcome!

About

Mail Sender Using SendGrid mail API

Topics

Resources

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE
MIT
LICENSE.md

Code of conduct

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Contributors 10

Languages