mandrill-send-promise
v1.0.1
Published
A package that lets you send email using Mandrill with one line of NodeJS.
Downloads
5
Maintainers
Readme
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: "[email protected]",
from_name: "From Name",
to_email: "[email protected]",
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 subjecttext
(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.