Azure SDK for Node.js
This project provides a Node.js package that makes it easy to consume and manage Microsoft Azure Services. It supports sdks for:
- old ASM services (packages with the naming convention of
azure-asm-*
) - new ARM services (packages with the naming convention of
azure-arm-*
) - data plane of some Azure services (packages with the naming convention of
azure-<servicename>
).
Usage
This module includes all of the individual Azure Node.js modules in a single place. If your application only needs access to specific management modules, see the list of individual modules below.
$ npm install azure
This will allow you access to some helper methods as well as all of the
individual modules. For example, by installing the azure
module, you can
directly require and use the ms-rest-azure
common module. This organization
method allows for submodules (and peer dependent modules) to always be in sync
with each other.
Note: We haven't provided fine-grained modules for every supported Microsoft Azure service yet. This will come soon. If there is a module that you find is missing, open an issue so that we may prioritize it in the backlog.
Documentation
Documentation of the supported sdks can be found at two places:
- https://azure.github.io/azure-sdk-for-node - This website primarily provides sdk documentation for
- ASM based services (azure-asm-*)
- some old data plane sdks like
azure-sb
,azure-scheduler
,azure-storage-legacy
,azure-monitoring
, etc. - runtime sdks like
ms-rest
,ms-rest-azure
,azure-common
- https://aka.ms/azure-node-sdk - This website primarily provides sdk documentation for
- ARM based services (azure-arm-*)
- newer data plane sdks like
azure-batch
,azure-graph
, etc.
Authenticating
There are three ways to authenticate against Azure while using the management plane (azure-arm-*) sdks and the azure-graph
sdk, use
this guide to determine which method to use.
AzureNodeEssentials VSCode extension
The AzureNodeEssentials extension helps you easily interact with Azure. It helps you:
- create a project scaffolding
- install correct dependencies
- ready to use snippets for authentication and deploying templates to azure
Please feel free to provide feedback for the extension by opening github issues over here.
Install individual modules
Azure Service (Data plane) | Install Command |
---|---|
Gallery | npm install azure-gallery |
Graph | npm install azure-graph |
Key Vault | npm install azure-keyvault |
Monitoring | npm install azure-monitoring |
Scheduler | npm install azure-scheduler |
Service Fabric | npm install azure-servicefabric |
Service Bus | npm install azure-sb |
Storage | npm install azure-storage |
Batch | npm install azure-batch |
Azure Resource Management (ARM) (Control plane) | |
Advisor | npm install azure-arm-advisor |
Api Management | npm install azure-arm-apimanagement |
App Insights | npm install azure-arm-appinsights |
Automation | npm install azure-arm-automation |
Authorization | npm install azure-arm-authorization |
Batch | npm install azure-arm-batch |
BatchAI | npm install azure-arm-batchai |
Billing | npm install azure-arm-billing |
CDN | npm install azure-arm-cdn |
CognitiveServices | npm install azure-arm-cognitiveservices |
ContainerInstance | npm install azure-arm-containerinstance |
CosmosDB | npm install azure-arm-cosmosdb |
Commerce/Usage | npm install azure-arm-commerce |
Container Registry | npm install azure-arm-containerregistry |
CustomerInsights | npm install azure-arm-customerinsights |
Compute | npm install azure-arm-compute |
Datafactory | npm install azure-arm-datafactory |
Datalake Analytics | npm install azure-arm-datalake-analytics |
Datalake Store | npm install azure-arm-datalake-store |
DevTest Labs | npm install azure-arm-devtestlabs |
DNS | npm install azure-arm-dns |
DomainServices | npm install azure-arm-domainservices |
EventGrid | npm install azure-arm-eventgrid |
EventHubs | npm install azure-arm-eventhub |
HDInsight | npm install azure-arm-hdinsight |
HDInsightJobs | npm install azure-arm-hdinsight-jobs |
Insights | npm install azure-arm-insights |
IotHub | npm install azure-arm-iothub |
Key Vault | npm install azure-arm-keyvault |
Logic Apps | npm install azure-arm-logic |
Machine Learning | npm install azure-arm-machinelearning |
Machine Learning Compute | npm install azure-arm-machinelearningcompute |
Media Services | npm install azure-arm-mediaservices |
Mobile Engagement | npm install azure-arm-mobileengagement |
Monitor Management | npm install azure-arm-monitor |
Notification Hubs | npm install azure-arm-notificationhubs |
Operations Management | npm install azure-arm-operations |
Operational Insights | npm install azure-arm-operationalinsights |
PowerBi Embedded | npm install azure-arm-powerbiembedded |
RecoveryServices | npm install azure-arm-recoveryservices |
RecoveryServices Backup | npm install azure-arm-recoveryservicesbackup |
RecoveryServices SiteRecovery | npm install azure-arm-recoveryservices-siterecovery |
Redis Cache | npm install azure-arm-rediscache |
Relay | npm install azure-arm-relay |
Resource Health | npm install azure-arm-resourcehealth |
Resource Manager | npm install azure-arm-resource |
Scheduler | npm install azure-arm-scheduler |
Search | npm install azure-arm-search |
ServerManagement | npm install azure-arm-servermanagement |
Servicebus | npm install azure-arm-sb |
Service Fabric | npm install azure-arm-servicefabric |
Storage | npm install azure-arm-storage |
Storage Import-Export | npm install azure-arm-storageimportexport |
Storsimple8000series | npm install azure-arm-storsimple8000series |
Stream Analytics | npm install azure-arm-streamanalytics |
Sql | npm install azure-arm-sql |
Traffic Manager | npm install azure-arm-trafficmanager |
Virtual Networks | npm install azure-arm-network |
VisualStudio | npm install azure-arm-visualstudio |
WebApps (WebSites) | npm install azure-arm-website |
Azure Service Management (ASM) (Control plane) | |
Compute | npm install azure-asm-compute |
HDInsight | npm install azure-asm-hdinsight |
Service Bus | npm install azure-asm-sb |
Service Manager | npm install azure-asm-mgmt |
Store | npm install azure-asm-store |
Scheduler | npm install azure-asm-scheduler |
SQL Database | npm install azure-asm-sql |
Storage | npm install azure-asm-storage |
Subscriptions | npm install azure-asm-subscription |
Traffic Manager | npm install azure-asm-trafficmanager |
Virtual Networks | npm install azure-asm-network |
WebSites | npm install azure-asm-website |
Base Libraries | |
Common Functionality (for ASM & ARM clients) | npm install azure-common |
Common Functionality for ARM clients generated from Autorest (Generic) | npm install ms-rest |
Common Functionality for ARM clients generated from Autorest (Azure) | npm install ms-rest-azure |
Need Help?
Related Projects
License
This project is licensed under MIT and Apache-2.0.
- "MIT" license is usually used for the client libraries generated using Autorest that are targeting ARM (V2 version of Azure REST API). The license can be found in "LICENSE.MIT.txt" file in this repository.
- "Apache-2.0" license is usually used for the client libraries generated using an internal code generator that are targeting ASM (V1 version of Azure REST API). The license can be found in "LICENSE.Apache.txt" file in this repository.
Contribute
- If you would like to become an active contributor to this project please follow the instructions provided in Microsoft Azure Projects Contribution Guidelines.
Getting Started Developing
Want to get started hacking on the code, super! Follow the following instructions to get up and running. These instructions expect you have Git and a supported version of Node installed.
- Fork it
- Git Clone your fork (
git clone {your repo}
) - Move into sdk directory (
cd azure-sdk-for-node
) - Install all dependencies (
npm install
) - Run the tests (
npm test
). You should see all tests passing.
Contributing Code to the Project
You found something you'd like to change, great! Please submit a pull request and we'll do our best to work with you to get your code included into the project.
- Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request