Skip to main content

This browser is no longer supported.

Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.

Download Microsoft Edge More info about Internet Explorer and Microsoft Edge
Read in English
Read in English Edit
Twitter LinkedIn Facebook Email

ARM template documentation

Azure Resource Manager templates are JavaScript Object Notation (JSON) files that define the infrastructure and configuration for your project.

About ARM templates

Overview

  • What are templates?

Concept

  • Best practices
  • Frequently asked questions
  • Template specs
  • Deployment modes
  • Linked templates

video

  • Build 2020 presentation

Get started

Quickstart

  • Create JSON templates - VS Code
  • Create JSON templates - portal
  • Create & deploy template specs

Tutorial

  • Beginner template tutorials

Training

  • Deploy with ARM templates

Develop templates

Tutorial

  • Advanced templates
  • Template specs

How-To Guide

  • Use functions
  • Define parameters
  • Define variables
  • Define resources
  • Define outputs

Reference

  • Template file syntax
  • Azure Quickstart templates

Deploy templates

Tutorial

  • Deployment

How-To Guide

  • PowerShell
  • Azure CLI
  • Portal
  • REST API
  • Deploy to Azure button
  • Cloud Shell
  • What-if deployment

Scoped deployments

How-To Guide

  • Resource group
  • Subscription
  • Management group
  • Tenant
  • Scoping extension resource
  • Template functions across scopes

Explore reference content

Reference

  • Template reference
  • REST API
  • Azure PowerShell
  • Azure CLI
  • .NET
  • Java
  • Python

Manage templates

How-To Guide

  • Test toolkit
  • Export templates
  • CI/CD
  • View deployment history
  • Previous Versions
  • Blog
  • Contribute
  • Privacy
  • Terms of Use
  • Trademarks
  • © Microsoft 2023
  • Previous Versions
  • Blog
  • Contribute
  • Privacy
  • Terms of Use
  • Trademarks
  • © Microsoft 2023