/azure-sdk-for-node

Azure SDK for Node.js - Documentation

Primary LanguageJavaScript

Azure SDK for Node.js

NPM version Build Status

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

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.

  1. Fork it
  2. Git Clone your fork (git clone {your repo})
  3. Move into sdk directory (cd azure-sdk-for-node)
  4. Install all dependencies (npm install)
  5. 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.

  1. Commit your changes (git commit -am 'Add some feature')
  2. Push to the branch (git push origin my-new-feature)
  3. Create new Pull Request