NPM Version NPM Downloads Node.js Version Build Status Test Coverage

HTTP status utility for node.

This module provides a list of status codes and messages sourced from a few different projects:


This is a Node.js module available through the npm registry. Installation is done using the npm install command:

$ npm install statuses


var status = require('statuses')

var code = status(Integer || String)

If Integer or String is a valid HTTP code or status message, then the appropriate code will be returned. Otherwise, an error will be thrown.

status(403) // => 403
status('403') // => 403
status('forbidden') // => 403
status('Forbidden') // => 403
status(306) // throws, as it's not supported by node.js


Returns an object which maps status codes to status messages, in the same format as the Node.js http module.

Returns an array of all the status codes as Integers.

var msg = status[code]

Map of code to status message. undefined for invalid codes.

status[404] // => 'Not Found'

var code = status[msg]

Map of status message to code. msg can either be title-cased or lower-cased. undefined for invalid status messages.

status['not found'] // => 404
status['Not Found'] // => 404


Returns true if a status code is a valid redirect status.

status.redirect[200] // => undefined
status.redirect[301] // => true


Returns true if a status code expects an empty body.

status.empty[200] // => undefined
status.empty[204] // => true
status.empty[304] // => true


Returns true if you should retry the rest.

status.retry[501] // => undefined
status.retry[503] // => true