node package manager
It’s your turn. Help us improve JavaScript. Take the 2017 JavaScript Ecosystem Survey »



A JavaScript client for Collective. Works in node and in the browser!

(Note: It technically works in the browser only if you turn off CORS or use a proxy like corsproxy to bypass CORS restrictions for now.)



Response Handling


Responses can be handled using promises thanks to then/promise.

// Promise
var success = function(res) {
    console.log("Promise success!");
var failure = function(err){
    console.log("Promise fail!");
var query = null;
collective('GET', '/collections', query, options).then(success, failure);


Responses can also be handled using nodejs style callbacks:

// Callback
var cb = function(err, res){
    console.log("Callback success!");
var query = null;
collective('GET', '/collections', query, options, cb);

Types of Results

The library can also return the response body in different ways. You can use any of the following with callbacks or promises as well.

Receive a Stream of Data

By default, the response object passed into a successful promise or callback is an instance of an http.IncomingMessage and, as such, the response body is a stream.Readable.

collective('GET', '/collections', null, options, cb);

Receive a Buffer of Data

You can also receive a Buffer of response data using the buffer() method.

collective.buffer('GET', '/collections', null, options, cb);

Receive JSON Data

JSON data can be returned using the json() method:

// JSON Callback
var cb = function(err, res){
var query = null;
collective.json('GET', '/collections', query, options, cb);
// JSON Promise
var success = function(res) {
var query = null;
collective.json('GET', '/collections', query, options).then(success);