Node.js SDK for DocumentDB APIs for Microsoft Azure Cosmos DB Service.
This project provides a node module that makes it easy to interact with DocumentDB APIs of Azure Cosmos DB (cosmosdb) Service.
For documentation please see the Microsoft Azure Node.js Developer Center and the Node.js SDK Documentation.
The core module uses the callbacks model for responses, exposed through the DocumentClient
npm install documentdb
To use this SDK to call DocumentDB APIs of Azure Cosmos DB, you need to first create an account.
You can follow this tutorial to help you get started.
When connecting to the emulator from the SDK, SSL verification is disabled.
var DocumentClient = require('documentdb').DocumentClient;
var host = "[hostendpoint]"; // Add your endpoint
var masterKey = "[database account masterkey]"; // Add the masterkey 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!" };
client.createDatabase(databaseDefinition, function(err, database) {
if(err) return console.log(err);
console.log('created db');
client.createCollection(database._self, collectionDefinition, function(err, collection) {
if(err) return console.log(err);
console.log('created collection');
client.createDocument(collection._self, documentDefinition, function(err, document) {
if(err) return console.log(err);
console.log('Created Document with content: ', document.content);
cleanup(client, database);
});
});
});
function cleanup(client, database) {
client.deleteDatabase(database._self, function(err) {
if(err) console.log(err);
})
}
Getting started with DocumentDB Node.js SDK:
Be sure to check out the Microsoft Azure Developer Forums on MSDN or the Developer Forums on Stack Overflow if you have trouble with the provided code.
If you would like to become an active contributor to this project please follow the instructions provided in Azure Projects Contribution Guidelines.
If you encounter any bugs with the library please file an issue in the Issues section of the project.