nodemailer-mandrill-transport

1.2.0 • Public • Published

nodemailer-mandrill-transport

A Mandrill transport for Nodemailer.

Build Status NPM version

Example

'use strict';
 
var nodemailer = require('nodemailer');
 
var mandrillTransport = require('nodemailer-mandrill-transport');
 
var transport = nodemailer.createTransport(mandrillTransport({
  auth: {
    apiKey: 'key'
  }
}));
 
transport.sendMail({
  from: 'sender@example.com',
  to: 'user@example.com',
  subject: 'Hello',
  html: '<p>How are you?</p>'
}, function(err, info) {
  if (err) {
    console.error(err);
  } else {
    console.log(info);
  }
});

Using Mandrill API options

It is possible to use any Messages Send Mandrill API option by passing it into the mandrillOptions option. These will be deeply merged over the API call this transport builds for you. For example, this transport enables the async option by default. To disable this,

transport.sendMail({
  mandrillOptions: {
    async: false
  }
}, /* ... */);

Sending Images to Mandrill

To send images as attachments:

transport.sendMail({
  mandrillOptions: {
    images: [
      'type': 'image/png',
      'name': 'IMAGECID',
      'content': 'ZXhhbXBsZSBmaWxl',
    ],
  }
}, /* ... */);

name: image cid:

Reference your attached image in your HTML:

<img src="IMAGECID">

Make sure to use unique cids for your images!

content: a base64 representation of your image.

var fs = require('fs');
var imgBuff = fs.readFileSync('path/to/file');
 
imgBuff.toString('base64');

Using Mandrill Templates

To send email using templates stored on Mandrill:

transport.sendMail({
  mandrillOptions: {
    template_name: 'MANDRILL_TEMPLATE_SLUG'
  }
}, /* ... */);

Readme

Keywords

Package Sidebar

Install

npm i nodemailer-mandrill-transport

Weekly Downloads

10,633

Version

1.2.0

License

ISC

Last publish

Collaborators

  • devinus
  • motdotla
  • elbuo8