Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Node.js API for prowl, allowing to send PUSH notifications to your iPhone!
Branch: master
Failed to load latest commit information.
lib Make prowl.push callback optional
test catch errors, both http and prowl specific errors
.gitignore Removing node modules
LICENSE Big commit, tests push function
Makefile Changing description and adding publish command Add Brandon's contribution to changelog

node-prowl - Prowl for Node.js API

Be happy! Send push notifications to iDevices (iPad, iPhone etc) that has the Prowl iPhone app installed. Simple, easy and clean.

As of now this API supports push and only push.


npm install node-prowl

or put it in your package.json as usual and hit npm install. It depends on xml2js and request.


The API requires your API-key, which could be found or created on the "API Keys" tab on the Prowl website.

Initialize it with your key and start pushing!

var Prowl = require('node-prowl');

var prowl = new Prowl('MY-API-KEY');

Now, use the prowl object whenever sending a push:

prowl.push('YO, this is awesomez!', 'My app', function( err, remaining ){
    if( err ) throw err;
    console.log( 'I have ' + remaining + ' calls to the api during current hour. BOOM!' );

You can provide more options to the PUSH notification:

prowl.push('YO, this is awesomez!', 'My app', {
    providerkey: 'my-provider-key',
    priority: 2,
    url: ''
}, function( err, remaining ){
    if( err ) throw err;
    console.log( 'I have ' + remaining + ' calls to the api during current hour. BOOM!' );


I´d be happy if you wanted to contribute with pull requests or tips. I´ll add you to the contributors list here and in the package.json file.


While contributing, make sure to write a test and make it pass if you extend the library. Tests are written in the test directory, preferably in all.js, since its quite small right now. It uses should.js and mocha for tests.

Test by installing mocha and should.js (dev dependencies) and then just hit:

PROWL_KEY=[my key here] make

And voila, it autotests for you.

Happily written during a four hour hack in my apt in Chamonix, France.



  • paton contributes with callback fix


  • mrose17 contributes with error handling fix

2013-02-15 - version 0.1.6

  • Jellyfrog contributes with fixes parameter bugs.
  • Better error handling solving Issue 1
Something went wrong with that request. Please try again.