Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Node.JS module to send email with PostageApp API
JavaScript
tree: 36959bb848

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib
LICENSE
README.md
index.js
package.json

README.md

PostageApp for Node.JS

This is a module for Node.JS that allows you to send emails with PostageApp service. Personalized transactional email sending can be offloaded to PostageApp via the JSON based API.

API DocumentationPostageApp FAQsPostageApp Help Portal

Installation

Node Package Manager

In your app directory type npm install postageapp

Manual

GIT Submodule

In your app directory type:

git submodule add git@github.com:postageapp/postageapp-nodejs.git plugins/postage
git submodule init
git submodule update

GIT Clone

In your node_modules directory type

git clone git@github.com:postageapp/postageapp-nodejs.git postageapp

Sending a Message

When you require the library, make sure to specify your API key:

var postageapp = require('postageapp')('YOUR API KEY HERE');

After that, you should be good to go. Load the module in your app and call the sendMessage function. Here is a sample of how to use it:

var postageapp = require('postageapp')('YOUR API KEY HERE');
postageapp.sendMessage(options);

NOTE: The function has been renamed to sendMessage() so that this plugin will be more flexible going forward, for when we expand the API.

The options parameter on the sendMessage() function is a hash that contains all of the arguments that you will be using in your API call. Here is an example API call:

var options = { 
    recipients: "email@address.com",

    subject: "Subject Line",
    from: "sender@example.org",

    content: {
        'text/html': '<strong>Sample bold content.</strong>',
        'text/plain': 'Plain text goes here'
    }
}

You can use any of the arguments available to send_message.json when creating this hash.

Recipients can be passed along as a single string or as an array.

recipients: "email@address.com";
recipients: ["email1@address.com", "email2@address.com"];

If you wish to set Message Variables for each individual recipient, you just have to pass an array for each recipient.

recipients: {
    "email@example.com": {
        'variable': 'Value'
    }, 
    "email2@example.com": {
        'variable': 'Another Value'
    }
};

Content will accept an array for HTML and plain text content.

content: {
    'text/html': '<strong>Sample bold content.</strong>',
    'text/plain': 'Plain text goes here'
};

Subject and from can be simple strings.

subject: 'Subject Line';
from: 'sender@example.org';

Templates can be called by using the template slug from your PostageApp Projects.

template: 'sample_template';

Message Variables needs to have an array passed into it with the global variable names and values.

variables: {
    'variable': 'Variable value',
    'variable2': 'Another variable'
};

For more information about formatting of recipients, templates and variables please see the PostageApp documentation.

Something went wrong with that request. Please try again.