Q promises wrapper for the Azure DocumentDB Node.js SDK
npm install documentdb-q-promisesjs
var DocumentClient = require('documentdb-q-promises').DocumentClientWrapper;
var host = [hostendpoint]; // Add your endpoint
var masterKey = [database account masterkey]; // Add the massterkey of the endpoint
var client = new DocumentClient(host, {masterKey: masterKey});
var databaseDefinition = { id: "sample database" }
var collectionDefinition = { id: "sample collection" };
var documentDefinition = { id: "hello world doc", content: "Hello World!" };
var database, collection, document;
client.createDatabaseAsync(databaseDefinition)
.then(function(databaseResponse) {
database = databaseResponse.resource;
return client.createCollectionAsync(database._self, collectionDefinition);
})
.then(function(collectionResponse) {
collection = collectionResponse.resource;
return client.createDocumentAsync(collection._self, documentDefinition);
})
.then(function(documentResponse) {
var document = documentResponse.resource;
console.log('Created Document with content: ', document.content);
})
.fail(function(error) {
console.log("An error occured", error);
});
``