mandrill-send-promise

1.0.1 • Public • Published

Send Email (via Mandrill, with promises)

A simple utility function without any dependencies that sends email via Mandrill's REST API and returns a Promise.

Why use this?

While Mandrill provides their own NodeJS SDK, it is 3000 lines of code, includes dozens of unrelated functions, and is callback-based.

Other public utilities (e.g. mandrill-send) are callback-based and have dependencies that must be updated to remain secure and stable. Dependencies are hell.

mandrill-send-promise is promise-based, has 100% test coverage, and has no dependencies.

Installation

Run npm install mandrill-send-promise or yarn add mandrill-send-promise.

Setup

Import mandrill-send-promise into the file where you want to send your email.

const sendEmail = require('mandrill-send-promise')('API_KEY');

Usage

Call that sendEmail function with an object parameter that includes all required fields.

sendEmail(
  {
    from_email: "noreply@example.com",
    from_name: "From Name",
    to_email: "to@example.com",
    to_name: "To Name",
    subject: "Hello from Squad!",
    text: 'Hello! This is a test email.',
    tags: ['example', 'hello']
  }
);

Parameters

Required

from_email (string) - The email address you want listed as 'from'. For this to work, you need to setup a sending domain on Mandrill.
from_name (string) - Your name or your company's name.
to_email (string) - The email address of your user.
to_name (string) - The name of your user.
subject (string) - The email subject
text (string) - Tags for filtering sent emails within Mandrill

Optional

reply_to (string) - If you want users to reply to a different email address than what is listed as the "from" address.
html (string) - HTML for a rich email

Examples

To run the example, open your terminal, cd into the examples folder and run node -e "require('./sendEmail').sendExampleEmail(MANDRILL_API_KEY)" where "MANDRILL_API_KEY" is your own test api key from Mandrill.

Running Tests

To run the jest tests, you need to add an environment variable named mandrillAPIKey with your own test key from Mandrill.

Package Sidebar

Install

npm i mandrill-send-promise

Weekly Downloads

4

Version

1.0.1

License

MIT

Unpacked Size

12 kB

Total Files

8

Last publish

Collaborators

  • herstand