VAPIX is Axis’ own open API, implemented in Node.js
node-vapix is a Node.js implementation of VAPIX®, an HTTP-based API to interface with Axis cameras.
VAPIX® is Axis’ own open API (Application Programming Interface). It makes Axis network video solutions costefficient, flexible, scalable, future-proof and easy to integrate with other systems.
All Axis network cameras and video servers have an HTTP-based application programming interface. VAPIX® provides functionality for requesting images, controlling network camera functions (PTZ, relays etc.) and setting/retrieving internal parameter values. The purpose of the API is to make it easier for developers to build applications that support Axis video products.
For more details, and the source of the above quote, see Axis' page on the API.
Install from npm:
$ npm install vapix
And to use...
var vapix = ;
Returns a video stream. Each data event is a full frame. Parameters to
be set as an object in
options are outlined in the VAPIX®
Video Streaming API
var options =resolution: '640x480'compression: 25duration: 10fps: 30var mjpg = camera;mjpg;mjpg;
Grab an image. Parameters to be set as an object in
outlined in the VAPIX® Video Streaming API
var fs = ;var options =resolution: '640x480'compression: 30rotation: 0camera;
Returns an object containing the
height of the camera's image
node-vapix is written under the MIT License
2-22-13: requestImage() now complete. Correctly throws error.
1-22-13: Basic image download refined, no longer need to concatenate chunks on frontend. Moving from alpha status to beta.
1-21-13: Only a basic image download works.