node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »



heroku-proxy provides a proxy to the Heroku API for express apps. It is intended for use with node-heroku-bouncer.


$ npm install heroku-proxy --save


heroku-proxy assumes that it has the node-heroku-bouncer middleware in front of it. See the node-heroku-bouncer README for configuration instructions.

var express     = require('express');
var herokuProxy = require('heroku-proxy');
var app         = express();
// ...set up heroku-bouncer 

By default, heroku-proxy will proxy all requests to /api/* of any method to via https. You can override the default options by passing an object into the function returned by the heroku-proxy module:

  hostname: 'localhost',
  port    : 5001,
  prefix  : 'heroku-api',
  protocol: 'http'

Now, a request to /heroku-api/apps will be proxied to http://localhost:5001/apps.


Option Effect Default
log Log request details false
hostname The hostname to proxy requests to
port The port on API host 443
prefix A prefix path where your Express app will be listening for API requests api
protocol The protocol to use https
whitelistHeaders Additional headers to whitelist to pass through to the API []
headerTransforms An object of keys (from) and values (to) to transform request headers before being sent to the API {}


$ npm test