node package manager
Easy collaboration. Discover, share, and reuse code in your team. Create a free org »



A Simple Node Client for the Mogreet API (API Version 4.01 - 9/11/2012)

Please note that the author of this software has no connection with Mogreet. We just needed this stuff for our own projects. YMMV.

Mogreet is heavily adapted from twilio-node: and depends on request:


You can find/create your unique API credentials at: (requires a Mogreet dev account).

You can either instantiate the Client using your API credentials directly:

var accountCID    = Your Account CID,
    authToken     = Your Auth Token,
    smsID         = Your Campaign ID,
    mmsID         = Your MMS Campaign ID,
    options       = {};
var mogreet = require('mogreet')( accountCID, authToken, smsID, mmsID, options );

OR, better:

You can include the API credentials in your environment:

MOGREET_AUTH_TOKEN      = Your Auth Token

And instantiate the client with:

var mogreet = require('mogreet')();

Basic Usage

You can use the mogreet client to make any Mogreet API call. A full list of API calls and options is available at:

The standard client request signature is:

var options = {
    url: 'transaction.send'
    qs: {
        to          : '2125551212',
        message     : 'Hello World!',
        campaign_id : [SMS or MMS Campaign ID]
mogreet.request(options, function (error, data, response) {
    if (error) {
        // error - contains error information, if any 
    // data     - contains the server response as a JSON object 
    // response - is the raw Mogreet response 

Convenience Methods

Ping (

var options = {};, function (error, data, response) {} );

SMS (transaction.send)

var options = {
    qs: {
        to       : '2125551212',
        message  : 'Hello World!',
        callback : '(URL for optional callback to your server)'
mogreet.sendSms(options, function (error, data, response) {} );

MMS (transaction.send)

var options = {
    qs: {
        to          : '2125551212',
        message     : 'Hello World!',
        content_id  : '(optional - for content already on a mogreet server)',
        content_url : '(optional - for content at any accessible URL)',
        callback    : '(URL for optional callback to your server)'
mogreet.sendMms(options, function (error, data, response) {} );


At the moment there are no unit tests included, but there is a simple test script included. You can adapt the server file in test.js to run simple tests against your credentials.