Announcing the new Azure SDK for JavaScript
We are excited to announce that we are building a new Azure SDK for JavaScript in a new GitHub repo located here: https://github.com/azure/azure-sdk-for-js.
These packages ship with TypeScript type definitions and have both Node.js and Browser support.
Below are key points regarding deprecation of the packages in this repo and migration to the new packages
- All of the management plane SDKs (
azure-arm-*
) and most of the data plane SDKs (azure-*
), along with the rollup packageazure
in this repository, have been deprecated as of July, 2019. They have been replaced by the Azure SDK for JavaScript packages. - All of the management plane SDKs for the V1 Azure API (Azure Service Management)
azure-asm-*
will continue to be maintained from the Azure SDK for Node.js repository. We expect customers using these packages to move to Azure Resource Manager API packages at their earliest convenience. - To migrate your code from Azure SDK for Node.js to the new Azure SDK for JavaScript, first identify the counterparts in the new SDK and then read our Migration from Node.js packages (azure-sdk-for-node) to JavaScript packages (azure-sdk-for-js) article.
Azure SDK for Node.js
NOTE: This repo is being deprecated. All future JavaScript SDKs are moving to Azure SDK for JavaScript. Please see the note above for more information.
This project provides Node.js packages that makes it easy to consume and manage Microsoft Azure Services.
If you are new to Azure and Node.js, see Azure for Node.js developers.
For documentation specific to the Azure SDK Node.js packages, see the Azure Node SDK Reference.
Component | Build Status |
---|---|
Management Libraries | |
Client Libraries |
Usage
To install an individual Node.js package, look up the package name and use npm to install it into your project.
For example to install the Storage package, you would run:
$ npm install azure-storage
Supported services
This SDK has support for:
- Azure services
- These are packages with the naming convention of
azure-<servicename>
. - In the new Azure SDK for JS, the counterparts will have the naming convention of
@azure/<servicename>
- These are packages with the naming convention of
- ARM services
- These are packages with the naming convention of
azure-arm-*
- In the new Azure SDK for JS, the counterparts will have the naming convention of
@azure/arm-*
- These are packages with the naming convention of
- Legacy ASM services
- These are packages with the naming convention of
azure-asm-*
- In the new Azure SDK for JS, there are no counterparts to these packages. Please use the ARM services via packages
with the naming convention of
@azure/arm-*
- These are packages with the naming convention of
- The roll up package azure
- Installing this package will result in installing all the packages in this SDK including the helper modules like
ms-rest-azure
. - In the new Azure SDK for JS, there is no counterpart to this. You are encouraged to install only the packages you need.
- Installing this package will result in installing all the packages in this SDK including the helper modules like
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-*)
- Older 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.
Azure service modules
Package | Description | Documentation |
---|---|---|
azure-gallery | Access to the Azure Marketplace | azure-gallery package |
azure-graph | Access to Azure Active Directory | Azure Active Directory modules |
azure-keyvault | Integrate with Key Vault | Azure Key Vault modules |
azure-monitoring | Azure Monitoring | azure-monitoring package |
azure-scheduler | Create jobs with Azure Scheduler | Azure Scheduler modules |
azure-servicefabric | Azure Service Fabric | Azure Service Fabric modules |
azure-sb | Service Bus | Azure Service Bus modules |
azure-storage | Storage | Azure Storage modules |
azure-batch | Azure Batch processing | azure-batch package |
Note: If there is a Microsoft Azure service that doesn't have a package yet, open an issue so that we may prioritize it in the backlog.
Azure Resource Management (ARM)
Service | Install Command |
---|---|
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 |
Batch AI | 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 |
Data Lake Analytics | npm install azure-arm-datalake-analytics |
Data Lake 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 |
StorSimple 8000 series | 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 |
Visual Studio | npm install azure-arm-visualstudio |
WebApps (WebSites) | npm install azure-arm-website |
Azure Service Management (ASM)
Service | Install Command |
---|---|
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
Library | Install Command |
---|---|
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
This project has adopted the Microsoft Open Source Code of Conduct.
For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
If you would like to become an active contributor to this project please follow the instructions provided in Microsoft Open Source 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