node package manager


Apiary Blueprint Parser

A JavaScript parser of Apiary API blueprints.

Deprecation warning

The Apiary Blueprint Parser is currently frozen. There is no future development planned.

Please check the new API Blueprint which supersedes the Apiary Blueprint and is completely open-sourced including its parser, tools and bindings.



$ npm install apiary-blueprint-parser

Do not install the parser globally (using the -g option), otherwise you won’t be able to use the API.


Download the latest browser version of the parser.


In Node.js, require the module:

var ApiaryBlueprintParser = require("apiary-blueprint-parser");

In browser, include the browser version of the parser in your web page or application using the <script> tag. The parser will be available in the ApiaryBlueprintParser global object.

To parse an API blueprint, just call the parse method and pass the blueprint as a parameter. The method will return an object representing the parsed blueprint or throw an exception if the input is invalid:

var blueprint = ApiaryBlueprintParser.parse([
  "Root resource",
  "GET /",
  "< 200"
var resource = blueprint.sections[0].resources[0];
console.log(resource.description)     // prints "Root resource" 
console.log(resource.method)          // prints "GET" 
console.log(resource.url)             // prints "/" 
console.log(resource.response.status) // prints "200" 

See the src/ file to get an idea about returned objects and their capabilities.

The exception thrown in case of error will contain offset, line, column, expected, found and message properties with more details about the error.


The parser should run well in the following environments:

  • Node.js 0.6.18+
  • IE 9+
  • Firefox
  • Chrome
  • Safari
  • Opera

The parser should also work in IE 8, but this is not fully tested because the test suite runs correctly only in IE 9+.