Skip to content

t-ho/sendgrid-template-helper

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
lib
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

npm version Node.js CI code style: prettier license

sendgrid-template-helper

The Sendgrid wrapper helps to send an email with a dynamic template stored on disk. It tries to create a dynamic template on the Sendgrid server via Sendgrid API v3, then caches the template ID locally for later uses.

Installation

Install sendgrid-template-helper via NPM:

npm install --save sendgrid-template-helper
# or
yarn add sendgrid-template-helper

Obtain a Sendgrid API Key

Create your Sendgrid API Key from SendGrid

Setup Environment variables

In your development environment, export your Sendgrid API Key as follow:

export SENDGRID_API_KEY=YOUR_API_KEY

Send email

To send an email with dynamic email template (template is on your disk):

const path = require("path");
const Email = require("sendgrid-template-helper");

const settings = {
  apiKey: process.env.SENDGRID_API_KEY,
  prefix: "your_app_name_",
};

const email = new Email(settings);

email
  .send({
    to: "user@tdev.app",
    from: "admin@tdev.app",
    subject: `[Test] Sendgrid template helper`,
    templatePath: path.resolve(__dirname, "./dynamic-email-template.html"), // absolute path to your template
    dynamicTemplateData: {
      // your dynamic template data
      username: "user",
    },
  })
  .then(() => {})
  .catch(console.log);

For more use cases, please see Sendgrid use cases.

Email settings

Property Name Type Description
apiKey string SendGrid API Key
prefix string The prefix used as namespace to create template name.

Testing

# Export your SendGrid API Key
export SENDGRID_API_KEY=YOUR_API_KEY

# Run all tests
npm test

License

MIT © t-ho

About

The Sendgrid wrapper helps to send an email with a dynamic template stored on disk.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages