Skip to content


Subversion checkout URL

You can clone with
Download ZIP
API for the BoxCar Push Notifications Service
Branch: master
Pull request Compare This branch is 12 commits behind devdazed:master.

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.

BoxCar API

This is a node.js non-blocking API consumer for the BoxCar push notification service. BoxCar Api is an EventEmitter that emits 'response' on completion. You can push notifications as yourself (a user) or as a provider.



$ npm install boxcar


$ git clone

Basic Usage

The constructor takes 2 arguments, the fist is your Provider Key, the second is your secret key. Your secret key is only required if using 'broadcast' or 'notifyService'

var boxcar = require('boxcar');
var provider = new boxcar.Provider('your_provider_key', 'your_provider_secret');

//to brodcast a message to your all of the users in your service
provider.broadcast('This is a test', 'FooBar');

//send a message to a user directly
provider.notify('', 'Hi FooBar!');

//subscribe a current boxcar user to your service

//to send yourself messages you can use the user api
var user = new boxcar.Provider('', 'your_boxcar_password');
user.notify('Hai Me!');

Advanced Usage

When using notify and broadcast you can specify additional parameters, an explanation of parameters is below.


Subscribes a boxcar user to your service

Provider.notify(email, message, fromScreenName, fromRemoteServiceId, redirectPayload, sourceUrl, iconUrl)

Sends a notification to a specific user

Provider.broadcast(message, fromScreenName, fromRemoteServiceId, redirectPayload, sourceUrl, iconUrl)

Sends a notification to all users in your service

User.notify(message, fromScreenName, fromRemoteServiceId, sourceUrl, iconUrl)

To use the User API, you must first install the boxcar Growl service.


  • email: The user's email address
  • message: The message to display to the user. This message should be at a maximum somewhere around 140 characters in length. Longer messages will be truncated depending on the client receiving it.
  • fromScreenName: The user or application sending the notification. This is matched for the redirect performed by Boxcar (if set by the user).
  • fromRemoteServiceId: An integer value that will uniquely identify the notification, and prevent duplicate notifications about the same event from being created.
  • redirectPayload: The payload to be passed in as part of the redirection URL. Keep this as short as possible. If your redirection URL contains "::user::" in it, this will replace it in the URL. An example payload would be the users username, to take them to the appropriate page when redirecting.
  • sourceUrl: This is a URL that may be used for future devices. It will replace the redirect payload.
  • iconUrl: This is the URL of the icon that will be shown to the user. Standard size is 57x57.
Something went wrong with that request. Please try again.