diff --git a/.vscode/launch.json b/.vscode/launch.json index fe6da0a7d616..1968170cd206 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -4,6 +4,16 @@ // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ + { + "name": "Split Deployments", + "type": "node", + "request": "launch", + "runtimeExecutable": "npm", + "args": [ + "start" + ], + "cwd": "${workspaceFolder}/dev/deployments/convert" + }, { "type": "node", "request": "launch", diff --git a/dev/deployments/convert/.tsconfig b/dev/deployments/convert/.tsconfig new file mode 100644 index 000000000000..17bf5887e869 --- /dev/null +++ b/dev/deployments/convert/.tsconfig @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "skipLibCheck": true, + "module": "commonjs", + "noEmitOnError": true, + "noImplicitReturns": true, + "sourceMap": true, + "declarationMap": true, + "strict": true, + "declaration": true, + "stripInternal": true, + "noEmitHelpers": false, + "target": "es2019", + "types": ["node"], + "esModuleInterop": true, + "lib": ["es2020"], + "newLine": "LF", + "outDir": "dist", + "rootDir": "." + }, + "exclude": ["dist", "node_modules"] +} \ No newline at end of file diff --git a/dev/deployments/convert/main.ts b/dev/deployments/convert/main.ts new file mode 100644 index 000000000000..8cbdbdfc69d5 --- /dev/null +++ b/dev/deployments/convert/main.ts @@ -0,0 +1,365 @@ +/* +To run: +git checkout origin/main -- specification/resources/resource-manager/Microsoft.Resources +npm --prefix dev/deployments/convert ci +npm --prefix dev/deployments/convert start +*/ + +import path, { basename, dirname } from 'path'; +import { mkdirSync, readFileSync, readdirSync, renameSync, unlinkSync, writeFileSync } from 'fs'; +import { spawnSync } from 'child_process'; +import { replaceSourceReadmes, writeMarkdownFiles } from './markdown'; + +const deploymentsPaths = [ + '/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}', + '/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel', + '/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate', + '/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate', + '/{scope}/providers/Microsoft.Resources/deployments/', + '/providers/Microsoft.Resources/deployments/{deploymentName}', + '/providers/Microsoft.Resources/deployments/{deploymentName}/cancel', + '/providers/Microsoft.Resources/deployments/{deploymentName}/validate', + '/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf', + '/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate', + '/providers/Microsoft.Resources/deployments/', + '/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}', + '/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel', + '/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate', + '/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf', + '/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate', + '/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/', + '/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}', + '/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel', + '/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate', + '/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf', + '/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate', + '/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/', + '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}', + '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel', + '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate', + '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf', + '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate', + '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/', + '/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}', + '/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations', + '/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}', + '/providers/Microsoft.Resources/deployments/{deploymentName}/operations', + '/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}', + '/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations', + '/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}', + '/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations', + '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}', + '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations', + '/providers/Microsoft.Resources/calculateTemplateHash', +]; + +function getFiles(dir: string, fileName: string) { + const dirents = readdirSync(dir, { withFileTypes: true }); + let files: string[] = []; + for (const dirent of dirents) { + const res = path.resolve(dir, dirent.name); + if (dirent.isDirectory()) { + files = [...files, ...getFiles(res, fileName)]; + } else { + if (basename(res).toLowerCase() === fileName.toLowerCase()) { + files = [...files, res]; + } + } + } + + return files; +} + +function splitResourcesJson(resourcesPath: string) { + const contentsString = readFileSync(resourcesPath, { encoding: 'utf-8'}); + const existing = JSON.parse(contentsString); + const newDeployments = JSON.parse(contentsString); + const newResources = JSON.parse(contentsString); + + const paths = existing['paths']; + const deploymentRefs = new Set(); + const resourcesRefs = new Set(); + for (const path of Object.keys(paths)) { + const isDeploymentsOwned = deploymentsPaths.indexOf(path) > -1; + + if (isDeploymentsOwned) { + delete newResources['paths'][path]; + } else { + delete newDeployments['paths'][path]; + } + + for (const ref of obtainRefs(existing, paths[path])) { + if (isDeploymentsOwned) { + deploymentRefs.add(ref); + } else { + resourcesRefs.add(ref); + } + } + } + + for (const ref of deploymentRefs) { + if (!resourcesRefs.has(ref)) { + deleteRef(newResources, ref); + } + } + for (const ref of resourcesRefs) { + if (!deploymentRefs.has(ref)) { + deleteRef(newDeployments, ref); + } + } + + const parentPath = path.dirname(resourcesPath); + const specsBasePath = path.dirname(path.dirname(parentPath)); + + const deploymentsBasePath = path.resolve(specsBasePath, 'deployments'); + const newDeploymentsPath = path.resolve(deploymentsBasePath, path.relative(specsBasePath, parentPath), 'deployments.json'); + + writeFileSync(resourcesPath, JSON.stringify(newResources, null, 2) + '\n'); + + newDeployments['info']['title'] = 'DeploymentsClient'; + newDeployments['info']['description'] = 'Provides operations for working with deployments.'; + writeSpecAndExamples(newDeployments, resourcesPath, newDeploymentsPath); + + return newDeploymentsPath; +} + +function writeSpecAndExamples(spec: any, sourcePath: string, destPath: string) { + fixRelativePaths(spec); + + mkdirSync(path.dirname(destPath), { recursive: true }); + writeFileSync(destPath, JSON.stringify(spec, null, 2) + '\n'); + + for (const examplePath of obtainExamples(spec)) { + const exampleSourcePath = path.resolve(dirname(sourcePath), examplePath); + const exampleDestPath = path.resolve(dirname(destPath), examplePath); + + mkdirSync(path.dirname(exampleDestPath), { recursive: true }); + renameSync(exampleSourcePath, exampleDestPath); + } +} + +function deleteRef(document: any, ref: string) { + if (!ref.startsWith('#/')) { + throw `Cannot process ref ${ref}`; + } + + const path = ref.substring(2).split('/'); + let refLookup = document; + while (path.length > 1) { + const key = path.shift() as string; + refLookup = refLookup[key]; + } + + delete refLookup[path[0]]; +} + +function obtainRefs(document: any, node: any): string[] { + const refs = new Set(); + const nodes = [node]; + + while (nodes.length > 0) { + const curNode = nodes.pop(); + const curRefs = findRefsRecursive(curNode); + for (const curRef of curRefs) { + if (refs.has(curRef)) { + continue; + } + + refs.add(curRef); + if (curRef.startsWith('#/')) { + const path = curRef.substring(2).split('/'); + let refLookup = document; + while (path.length > 0) { + const key = path.shift() as string; + refLookup = refLookup[key]; + } + + if (!refLookup) { + throw `Failed to find definition ${curRef}`; + } + + nodes.push(refLookup); + } + } + } + + return [...refs].filter(x => x.startsWith('#/')); +} + +function* obtainExamples(document: any) { + for (const exampleBlock of findExamplesRecursive(document)) { + for (const example of Object.values(exampleBlock)) { + if (typeof example['$ref'] === 'string') { + yield example['$ref']; + } + } + } +} + +function* findRefsRecursive(node: any): Generator { + if (typeof node === 'object') { + if (typeof node['$ref'] === 'string') { + yield node['$ref']; + } + if (typeof node['x-ms-odata'] === 'string') { + yield node['x-ms-odata']; + } + + for (const key of Object.keys(node)) { + yield* findRefsRecursive(node[key]); + } + } else if (Array.isArray(node)) { + for (const item of node) { + yield* findRefsRecursive(item); + } + } +} + +function* findExamplesRecursive(node: any): Generator> { + if (typeof node === 'object') { + if (typeof node['x-ms-examples'] === 'object') { + yield node['x-ms-examples']; + } + + for (const key of Object.keys(node)) { + yield* findExamplesRecursive(node[key]); + } + } else if (Array.isArray(node)) { + for (const item of node) { + yield* findExamplesRecursive(item); + } + } +} + +function fixRelativePaths(node: any) { + if (typeof node === 'object') { + if (typeof node['$ref'] === 'string' && + node['$ref'].startsWith('../../../../../common-types/')) { + // new files are emitted one dir level deeper, we need to adjust for that + node['$ref'] = `../${node['$ref']}`; + } + + for (const key of Object.keys(node)) { + fixRelativePaths(node[key]); + } + } else if (Array.isArray(node)) { + for (const item of node) { + fixRelativePaths(item); + } + } +} + +function moveJsonSpec(specPath: string, newPathName: string) { + const contentsString = readFileSync(specPath, { encoding: 'utf-8'}); + const existing = JSON.parse(contentsString); + + const parentPath = path.dirname(specPath); + const specsBasePath = path.dirname(path.dirname(parentPath)); + + const deploymentsBasePath = path.resolve(specsBasePath, newPathName); + const newSpecPath = path.resolve(deploymentsBasePath, path.relative(specsBasePath, parentPath), basename(specPath)); + + writeSpecAndExamples(existing, specPath, newSpecPath); + unlinkSync(specPath); + + return newSpecPath; +} + +function generateDeploymentsFiles(basePath: string) { + const filePaths = getFiles(basePath, 'resources.json'); + const newFilePaths = filePaths.map(p => p.replace('resources.json', 'deployments.json')); + + let newPaths = []; + for (const filePath of filePaths) { + newPaths.push(splitResourcesJson(filePath)); + } + writeMarkdownFiles(path.resolve(basePath, 'deployments'), newFilePaths.map(x => path.relative(basePath, x)), 'Deployments', 'DeploymentsClient'); + + return newPaths; +} + +function generateDeploymentScriptsFiles(basePath: string) { + const filePaths = getFiles(basePath, 'deploymentScripts.json'); + + let newPaths = []; + for (const filePath of filePaths) { + newPaths.push(moveJsonSpec(filePath, 'deploymentScripts')); + } + writeMarkdownFiles(path.resolve(basePath, 'deploymentScripts'), filePaths.map(x => path.relative(basePath, x)), 'DeploymentScripts', 'DeploymentScriptsClient'); + + return newPaths; +} + +function generateDeploymentStacksFiles(basePath: string) { + const filePaths = getFiles(basePath, 'deploymentStacks.json'); + + let newPaths = []; + for (const filePath of filePaths) { + newPaths.push(moveJsonSpec(filePath, 'deploymentStacks')); + } + writeMarkdownFiles(path.resolve(basePath, 'deploymentStacks'), filePaths.map(x => path.relative(basePath, x)), 'DeploymentStacks', 'DeploymentStacksClient'); + + return newPaths; +} + +function generateTemplateSpecsFiles(basePath: string) { + const filePaths = getFiles(basePath, 'templateSpecs.json'); + + let newPaths = []; + for (const filePath of filePaths) { + newPaths.push(moveJsonSpec(filePath, 'templateSpecs')); + } + writeMarkdownFiles(path.resolve(basePath, 'templateSpecs'), filePaths.map(x => path.relative(basePath, x)), 'TemplateSpecs', 'TemplateSpecsClient'); + + return newPaths; +} + +function generateBicepFiles(basePath: string) { + const filePaths = getFiles(basePath, 'bicepClient.json'); + + let newPaths = []; + for (const filePath of filePaths) { + newPaths.push(moveJsonSpec(filePath, 'bicep')); + } + writeMarkdownFiles(path.resolve(basePath, 'bicep'), filePaths.map(x => path.relative(basePath, x)), 'Bicep', 'BicepClient'); + + return newPaths; +} + +function writeSuppressions(basePath: string, apiFilesByService: Record) { + let contents = ''; + + for (const [_, filePaths] of Object.entries(apiFilesByService)) { + const relativePaths = filePaths.map(x => path.relative(basePath, x)); + contents += ` +- tool: TypeSpecRequirement + paths: + - ${relativePaths.join('\n - ')} + reason: Brownfield service not ready to migrate +`; + } + + writeFileSync(path.resolve(basePath, 'suppressions.yaml'), contents); +} + +function main() { + // change this if wanting to base off a later commit # + const baseCommit = 'fc1f625dbec2d92ba4d9dd0df16ece543b04fec9'; + const serviceBasePath = path.resolve(__dirname, '../../../specification/resources'); + const rpBasePath = path.resolve(serviceBasePath, 'resource-manager/Microsoft.Resources'); + + spawnSync('git', ['restore', `--source=${baseCommit}`, '--worktree', '--', serviceBasePath]); + + let apiFilesByService: Record = {}; + apiFilesByService['deployments'] = generateDeploymentsFiles(rpBasePath); + apiFilesByService['templateSpecs'] = generateTemplateSpecsFiles(rpBasePath); + apiFilesByService['deploymentStacks'] = generateDeploymentStacksFiles(rpBasePath); + apiFilesByService['deploymentScripts'] = generateDeploymentScriptsFiles(rpBasePath); + apiFilesByService['bicep'] = generateBicepFiles(rpBasePath); + + writeSuppressions(rpBasePath, apiFilesByService); + + replaceSourceReadmes(rpBasePath); +} + +main(); \ No newline at end of file diff --git a/dev/deployments/convert/markdown.ts b/dev/deployments/convert/markdown.ts new file mode 100644 index 000000000000..51c3abe2774c --- /dev/null +++ b/dev/deployments/convert/markdown.ts @@ -0,0 +1,671 @@ +import path from "path"; +import { readFileSync, writeFileSync } from "fs"; + +type Component = 'Deployments' | 'DeploymentScripts' | 'DeploymentStacks' | 'TemplateSpecs' | 'Bicep'; + +export function writeMarkdownFiles(basePath: string, filePaths: string[], componentName: Component, clientName: string) { + const apiVersions = filePaths.map((filePath) => getApiVersionFromFilePath(filePath)); + apiVersions.sort((a, b) => b.localeCompare(a)); + const latestApiVersion = apiVersions[0]; + + writeReadme(basePath, 'readme.md', getMainReadme(clientName, componentName, filePaths, latestApiVersion, suppressions[componentName]).trimStart()); + writeReadme(basePath, 'readme.csharp.md', getCsharpReadme(componentName).trimStart()); + writeReadme(basePath, 'readme.go.md', getGoReadme(componentName).trimStart()); + writeReadme(basePath, 'readme.java.md', getJavaReadme(componentName).trimStart()); + writeReadme(basePath, 'readme.python.md', getPythonReadme(componentName).trimStart()); + writeReadme(basePath, 'readme.typescript.md', getTypescriptReadme(clientName, componentName).trimStart()); +} + +function writeReadme(basePath: string, fileName: string, readme: string) { + // Remove leading + trailing whitespace, add a final newline + readme = readme.trim() + '\n'; + + writeFileSync(path.resolve(basePath, fileName), readme); +} + +function replaceMarkdownSectionMatching(readme: string, matcher: (heading: string) => boolean, replacer: (body: string) => string) { + return readme.replace(/(##.*?\n)([\s\S]*?)(?=\n##|$)/g, (match, _) => { + return matcher(match.split('\n')[0]) ? replacer(match) : match; + }); +} + +function removeMarkdownSectionMatching(readme: string, matcher: (heading: string) => boolean) { + return replaceMarkdownSectionMatching(readme, matcher, (_) => ''); +} + +function replaceCodeblockMatching(readme: string, matcher: (heading: string) => boolean, replacer: (body: string) => string) { + return readme.replace(/(```.*?\n)([\s\S]*?)(\n```\n\n)/g, (match, _) => { + return matcher(match.split('\n')[0]) ? replacer(match) : match; + }); +} + +function removeCodeblockMatching(readme: string, matcher: (heading: string) => boolean) { + return replaceCodeblockMatching(readme, matcher, (_) => ''); +} + +function removeLinesMatching(readme: string, matcher: (line: string) => boolean) { + return readme.split('\n').filter(x => !matcher(x)).join('\n'); +} + +function removeSuppressionMatching(readme: string, matcher: (body: string) => boolean) { + return readme.replace(/([ ]*- (from|suppress): .*?\n)([\s\S]*?)(?=\n[ ]*- (from|suppress): |```)\n/g, (match, _) => { + if (matcher(match)) { + return ''; + } + + return match; + }); +} + +function replaceFile(filePath: string, updateFunc: (content: string) => string) { + const content = readFileSync(filePath, 'utf8'); + const updatedContent = updateFunc(content); + writeFileSync(filePath, updatedContent); +} + +export function replaceSourceReadmes(basePath: string) { + const packagePattern = /(deploymentscripts|templatespecs|deploymentstacks|bicep)/; + + const readmes = [ + 'readme.md', + 'readme.go.md', + 'readme.java.md', + 'readme.nodejs.md', + 'readme.python.md', + 'readme.ruby.md', + 'readme.terraform.md', + 'readme.typescript.md', + ]; + + for (const readme of readmes) { + replaceFile(path.resolve(basePath, `../${readme}`), (content) => { + content = removeMarkdownSectionMatching(content, (heading) => packagePattern.test(heading)); + content = removeCodeblockMatching(content, heading => packagePattern.test(heading)); + + if (readme === 'readme.md') { + const movedFilesPattern = /from: (deploymentScripts|templateSpecs|deploymentStacks|bicep)/; + content = removeSuppressionMatching(content, body => movedFilesPattern.test(body)); + + content = replaceMarkdownSectionMatching( + content, + (heading) => heading === '## Suppression', + (sup) => replaceCodeblockMatching(sup, (_) => true, (cb) => { + return cb.trimEnd().replace(`\n\`\`\``, ` + - suppress: OperationsAPIImplementation + from: Microsoft.Resources/stable/2016-02-01/resources.json + reason: Pre-existing lint error. + - suppress: OperationsAPIImplementation + from: Microsoft.Resources/stable/2016-07-01/resources.json + reason: Pre-existing lint error. + - suppress: OperationsAPIImplementation + from: Microsoft.Resources/stable/2016-09-01/resources.json + reason: Pre-existing lint error. + - suppress: OperationsAPIImplementation + from: Microsoft.Resources/stable/2017-05-10/resources.json + reason: Pre-existing lint error. + - suppress: OperationsAPIImplementation + from: Microsoft.Resources/stable/2018-02-01/resources.json + reason: Pre-existing lint error. +\`\`\` + +`); + })); + } + + content = removeLinesMatching(content, line => packagePattern.test(line)); + + return content; + }); + } +} + +function getPackageName(apiVersion: string) { + const year = apiVersion.split('-')[0]; + const month = apiVersion.split('-')[1]; + const suffix = apiVersion.split('-')[2] === '01' ? '' : `${apiVersion.split('-')[2]}`; + + return `package-${year}-${month}${suffix}`; +} + +function getApiVersionFromFilePath(filePath: string) { + return filePath.replace(/^\.\//, '').split('/')[1]; +} + +function getMainReadme(clientName: string, componentName: string, filePaths: string[], latestApiVersion: string, suppressions: string | undefined) { + let readme = ` +# ${componentName} + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for ${componentName}. + +## Getting Started + +To build the SDKs for ${componentName}, simply install AutoRest via \`npm\` (\`npm install -g autorest\`) and then run: + +> \`autorest readme.md\` + +To see additional help and options, run: + +> \`autorest --help\` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the ${componentName} client. + +\`\`\` yaml +title: ${clientName} +description: ${componentName} Client +openapi-type: arm +tag: ${getPackageName(latestApiVersion)} +\`\`\` + +--- +`; + + for (const filePath of filePaths) { + const apiVersion = getApiVersionFromFilePath(filePath); + const packageName = getPackageName(apiVersion); + readme += ` +### Tag: ${packageName} + +These settings apply only when \`--tag=${packageName}\` is specified on the command line. + +\`\`\` yaml $(tag) == '${packageName}' +input-file: + - ${filePath} +\`\`\` +`; + } + + if (suppressions) { + readme += ` +## Suppression + +\`\`\` yaml +${suppressions.trim()} +\`\`\` +`; + } + + readme += ` +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +\`\`\` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-net + - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-powershell +\`\`\` + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Java + +See configuration in [readme.java.md](./readme.java.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) +`; + return readme; +} + +function getCsharpReadme(componentName: string) { + return ` +## C# + +These settings apply only when \`--csharp\` is specified on the command line. +Please also specify \`--csharp-sdks-folder=\`. + +\`\`\`yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Azure.ResourceManager.Resources.${componentName} + output-folder: $(csharp-sdks-folder)/resources/Azure.ResourceManager.Resources.${componentName}/GeneratedProtocol +\`\`\` +`; +} + +function getGoReadme(componentName: string) { + return ` +## Go + +These settings apply only when \`--go\` is specified on the command line. + + +\`\`\` yaml $(go) && $(track2) +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/resourcemanager/resources/arm${componentName.toLowerCase()} +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +azure-arm: true +\`\`\` +`; +} + +function getJavaReadme(componentName: string) { + return ` +## Java + +These settings apply only when \`--java\` is specified on the command line. +Please also specify \`--azure-libraries-for-java-folder=\`. + +\`\`\` yaml $(java) +java: + azure-arm: true + fluent: true + namespace: com.microsoft.azure.management.resources.${componentName.toLowerCase()} + output-folder: $(azure-libraries-for-java-folder)/sdk/resources/${componentName.toLowerCase()} + license-header: MICROSOFT_MIT_NO_CODEGEN + payload-flattening-threshold: 1 +\`\`\` +`; +} + +function getPythonReadme(componentName: string) { + return ` +## Python + +These settings apply only when \`--python\` is specified on the command line. +Please also specify \`--python-sdks-folder=\`. + +\`\`\` yaml $(python) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-resources-${componentName.toLowerCase()} +namespace: azure.mgmt.resources.${componentName.toLowerCase()} +package-version: 1.0.0 +clear-output-folder: true +\`\`\` + +\`\`\` yaml $(python) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resources-${componentName.toLowerCase()}/azure/mgmt/resources/${componentName.toLowerCase()} +\`\`\` +`; +} + +function getTypescriptReadme(clientName: string, componentName: string) { + return ` +## TypeScript + +These settings apply only when \`--typescript\` is specified on the command line. +Please also specify \`--typescript-sdks-folder=\`. + +\`\`\`yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-resources${componentName.toLowerCase()}" + output-folder: "$(typescript-sdks-folder)/sdk/resources/arm-resources${componentName.toLowerCase()}" + override-client-name: ${clientName} + generate-metadata: true +\`\`\` +`; +} + +type Suppression = { + suppress: string; + where?: string; + reason?: string; +}; + +const operationsApiSuppression: Suppression = { + suppress: 'OperationsAPIImplementation', + reason: 'Operations API is implemented as a separate service.', +}; + +const newSuppressions: Record = { + Deployments: [ + operationsApiSuppression, + { suppress: 'ProvisioningStateMustBeReadOnly' }, + { suppress: 'RequiredDefaultResponse' }, + { suppress: 'RequiredPropertiesMissingInResourceModel' }, + { suppress: 'RequestSchemaForTrackedResourcesMustHaveTags' }, + { suppress: 'DescriptionMustNotBeNodeName' }, + ], + DeploymentScripts: [ + operationsApiSuppression, + { suppress: 'XmsPageableForListCalls' }, + { suppress: 'AvoidAdditionalProperties' }, + { suppress: 'MissingTypeObject' }, + ], + DeploymentStacks: [ + operationsApiSuppression, + { suppress: 'DefaultErrorResponseSchema' }, + ], + TemplateSpecs: [ + operationsApiSuppression, + { suppress: 'AvoidAdditionalProperties' }, + { suppress: 'MissingTypeObject' }, + { suppress: 'ParametersInPointGet' }, + { suppress: 'PathForTrackedResourceTypes' }, + ], + Bicep: [ + operationsApiSuppression, + ], +}; + +function getNewSuppressions(component: Component) { + let output = ''; + for (const suppression of newSuppressions[component]) { + const { suppress, where, reason } = suppression; + const reasonText = reason ?? 'Pre-existing lint error.'; + output += ` - suppress: ${suppress} + from: ${filePathLookup[component]} + reason: ${reasonText} +`; + if (where) { + output += ` where: ${where} +`; + } + } + + return output; +} + +const filePathLookup: Record = { + Deployments: 'deployments.json', + DeploymentScripts: 'deploymentScripts.json', + DeploymentStacks: 'deploymentStacks.json', + TemplateSpecs: 'templateSpecs.json', + Bicep: 'bicepClient.json', +}; + +const suppressions: Record = { + Deployments: ` +directive: + - suppress: UniqueResourcePaths + from: deployments.json + where: $.paths + reason: route definitions under an extension resource with Microsoft.Management + - suppress: DescriptionAndTitleMissing + where: $.definitions.AliasPathMetadata + from: deployments.json + reason: This was already checked in - not my code + - suppress: XMS_EXAMPLE_NOTFOUND_ERROR + where: $.paths + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: OperationsApiResponseSchema + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: OperationsApiSchemaUsesCommonTypes + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: NoDuplicatePathsForScopeParameter + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: LroLocationHeader + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: LroErrorContent + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: NoErrorCodeResponses + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PutRequestResponseSchemeArm + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PutResponseSchemaDescription + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PostOperationAsyncResponseValidation + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: MissingXmsErrorResponse + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PathForPutOperation + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PathResourceProviderMatchNamespace + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: ParametersOrder + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: SyncPostReturn + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PathContainsResourceType + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: OperationIdNounVerb + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PathForResourceAction + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: UnSupportedPatchProperties + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: LroPostReturn + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: ProvisioningStateSpecifiedForLROPut + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: ProvisioningStateSpecifiedForLROPatch + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: SubscriptionsAndResourceGroupCasing + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: ResourceNameRestriction + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: ConsistentPatchProperties + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: GetCollectionOnlyHasValueAndNextLink + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: MissingTypeObject + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: TrackedResourcePatchOperation + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: IntegerTypeMustHaveFormat + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: BodyTopLevelProperties + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: TopLevelResourcesListBySubscription + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: XmsParameterLocation + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PathForTrackedResourceTypes + from: deployments.json + reason: Not a tracked resource type. Cannot change anything due to design philosophy in ARM. + - suppress: PostResponseCodes + from: deployments.json + reason: Breaking change in order to change the API response code. + - suppress: TenantLevelAPIsNotAllowed + from: deployments.json + reason: Tenant level API's are allowed as an exception in ARM repo. It is a breaking change to modify it. + - suppress: XmsPageableForListCalls + from: deployments.json + reason: Shared swagger with other teams. We cannot make changes to the API as we don't own it. + - suppress: EvenSegmentedPathForPutOperation + from: deployments.json + reason: Linter rule limitation. The API has never been changed since inception. Would be a breaking change. + - suppress: DeleteResponseCodes + from: deployments.json + reason: Breaking change in order to change the API response code. + - suppress: PutResponseCodes + from: deployments.json + reason: Breaking change in order to change the API response code. + - suppress: AvoidAdditionalProperties + from: deployments.json + reason: Breaking change in order to change the property names for multiple API's. Will fix in the future. + - suppress: XmsExamplesRequired + from: deployments.json + reason: Xms Examples required is a pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: RequiredReadOnlySystemData + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future + - suppress: TrackedExtensionResourcesAreNotAllowed + from: deployments.json + reason: "The deployments resource type is ProxyOnly." + - suppress: RequiredPropertiesMissingInResourceModel + from: deployments.json + where: $.definitions.Provider + reason: "Historically some properties have not been returned for this model and reviewer said OK to suppress." + - suppress: RequiredPropertiesMissingInResourceModel + from: deployments.json + where: $.definitions.DeploymentOperation + reason: "Historically some properties have not been returned for this model and reviewer said OK to suppress." + - suppress: RequiredPropertiesMissingInResourceModel + from: deployments.json + where: $.definitions.DeploymentOperationsListResult + reason: "Historically some properties have not been returned for this model and reviewer said OK to suppress." +${getNewSuppressions('Deployments')} +`, + DeploymentScripts: ` +directive: + - from: deploymentScripts.json + suppress: TrackedResourceGetOperation + where: $.definitions.AzureCliScript + reason: Tooling issue. + - from: deploymentScripts.json + suppress: TrackedResourcePatchOperation + where: $.definitions.AzureCliScript + reason: Tooling issue. + - from: deploymentScripts.json + suppress: TrackedResourceGetOperation + where: $.definitions.AzurePowerShellScript + reason: Tooling issue + - from: deploymentScripts.json + suppress: TrackedResourcePatchOperation + where: $.definitions.AzurePowerShellScript + reason: Tooling issue + - suppress: IntegerTypeMustHaveFormat + from: deploymentScripts.json + reason: Tooling issue, default is int32, explicitly mentioning the format as per doc, it still flags breaking change. + - suppress: ResourceNameRestriction + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PropertiesTypeObjectNoDefinition + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: SubscriptionsAndResourceGroupCasing + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: ParametersInPointGet + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: GetCollectionOnlyHasValueAndNextLink + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PatchIdentityProperty + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: LroErrorContent + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: ProvisioningStateSpecifiedForLROPut + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - from: deploymentScripts.json + suppress: R3006 + where: + - $.definitions.DeploymentScript.properties + - $.definitions.AzureCliScript.properties + - $.definitions.AzurePowerShellScript.properties + reason: Currently systemData is not allowed +${getNewSuppressions('DeploymentScripts')} +`, + DeploymentStacks: ` +directive: + - from: deploymentStacks.json + suppress: TrackedResourcePatchOperation + where: $.definitions + reason: Not a tracked resource. + - suppress: PathForTrackedResourceTypes + from: deploymentStacks.json + reason: "A deployment stack resource is a proxy location-mapped resource type." + - suppress: TenantLevelAPIsNotAllowed + from: deploymentStacks.json + reason: "Working with deployment stacks at the management group scope is supported." + - suppress: TrackedResourcePatchOperation + from: deploymentStacks.json + reason: "A deployment stack resource is a proxy location-mapped resource type." + - suppress: AvoidAdditionalProperties + from: deploymentStacks.json + reason: "Deployment properties such as 'parameters', 'outputs', and 'template' are dynamic types. For example, properties of the parameters object are defined by the template content." + - suppress: PostResponseCodes + from: deploymentStacks.json + reason: "Validate endpoints have 200, 202, 400, and default responses. The 400 response inherits the error response." + - suppress: LroErrorContent + from: deploymentStacks.json + reason: Error response is inherited via allOf on flagged response. + - suppress: NoErrorCodeResponses + from: deploymentStacks.json + reason: A 400 response from the validate endpoint indicates a validation failure and should not throw an exception. + - suppress: MissingXmsErrorResponse + from: deploymentStacks.json + reason: A 400 response from the validate endpoint indicates a validation failure and should not throw an exception. + - suppress: DeleteResponseCodes + from: deploymentStacks.json + reason: Deployment stacks supports synchronous delete with 200 response. +${getNewSuppressions('DeploymentStacks')} +`, + TemplateSpecs: ` +directive: + - suppress: R3006 + from: templateSpecs.json + where: + - $.definitions.TemplateSpec.properties + - $.definitions.TemplateSpecVersion.properties + - $.definitions.TemplateSpecUpdateModel.properties + - $.definitions.TemplateSpecVersionUpdateModel.properties + reason: Currently systemData is not allowed + - suppress: TrackedResourceListByImmediateParent + from: templateSpecs.json + where: $.definitions + reason: Tooling issue + - suppress: TrackedResourceListByResourceGroup + from: templateSpecs.json + where: $.definitions.TemplateSpecVersion + reason: Tooling issue +${getNewSuppressions('TemplateSpecs')} +`, + Bicep: ` +directive: +${getNewSuppressions('Bicep')} +`, +} \ No newline at end of file diff --git a/dev/deployments/convert/package-lock.json b/dev/deployments/convert/package-lock.json new file mode 100644 index 000000000000..857a4d3a9b19 --- /dev/null +++ b/dev/deployments/convert/package-lock.json @@ -0,0 +1,216 @@ +{ + "name": "convert", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "convert", + "version": "1.0.0", + "license": "MIT", + "devDependencies": { + "@types/node": "^20.11.20", + "ts-node": "^10.9.2" + }, + "engines": { + "node": "20.x" + } + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "dev": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.11.20", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz", + "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/ts-node": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", + "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", + "dev": true, + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/typescript": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", + "dev": true, + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "engines": { + "node": ">=6" + } + } + } +} diff --git a/dev/deployments/convert/package.json b/dev/deployments/convert/package.json new file mode 100644 index 000000000000..ee8a228edbbb --- /dev/null +++ b/dev/deployments/convert/package.json @@ -0,0 +1,18 @@ +{ + "name": "convert", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "start": "ts-node --project .tsconfig main.ts" + }, + "author": "", + "license": "MIT", + "devDependencies": { + "@types/node": "^20.11.20", + "ts-node": "^10.9.2" + }, + "engines": { + "node": "20.x" + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.csharp.md b/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.csharp.md new file mode 100644 index 000000000000..70d38a5019d4 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.csharp.md @@ -0,0 +1,15 @@ +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Azure.ResourceManager.Resources.Bicep + output-folder: $(csharp-sdks-folder)/resources/Azure.ResourceManager.Resources.Bicep/GeneratedProtocol +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.go.md b/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.go.md new file mode 100644 index 000000000000..259a0d93d392 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.go.md @@ -0,0 +1,12 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + + +``` yaml $(go) && $(track2) +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/resourcemanager/resources/armbicep +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +azure-arm: true +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.java.md b/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.java.md new file mode 100644 index 000000000000..388d631ca2bf --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.java.md @@ -0,0 +1,14 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +java: + azure-arm: true + fluent: true + namespace: com.microsoft.azure.management.resources.bicep + output-folder: $(azure-libraries-for-java-folder)/sdk/resources/bicep + license-header: MICROSOFT_MIT_NO_CODEGEN + payload-flattening-threshold: 1 +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.md b/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.md new file mode 100644 index 000000000000..ea516240a610 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.md @@ -0,0 +1,89 @@ +# Bicep + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Bicep. + +## Getting Started + +To build the SDKs for Bicep, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the Bicep client. + +``` yaml +title: BicepClient +description: Bicep Client +openapi-type: arm +tag: package-2023-11 +``` + +--- + +### Tag: package-2023-11 + +These settings apply only when `--tag=package-2023-11` is specified on the command line. + +``` yaml $(tag) == 'package-2023-11' +input-file: + - stable/2023-11-01/bicepClient.json +``` + +## Suppression + +``` yaml +directive: + - suppress: OperationsAPIImplementation + from: bicepClient.json + reason: Operations API is implemented as a separate service. +``` + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-net + - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-powershell +``` + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Java + +See configuration in [readme.java.md](./readme.java.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) diff --git a/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.python.md b/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.python.md new file mode 100644 index 000000000000..8962bac3350d --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.python.md @@ -0,0 +1,18 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(python) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-resources-bicep +namespace: azure.mgmt.resources.bicep +package-version: 1.0.0 +clear-output-folder: true +``` + +``` yaml $(python) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resources-bicep/azure/mgmt/resources/bicep +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.typescript.md b/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.typescript.md new file mode 100644 index 000000000000..000ecfc98470 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/bicep/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-resourcesbicep" + output-folder: "$(typescript-sdks-folder)/sdk/resources/arm-resourcesbicep" + override-client-name: BicepClient + generate-metadata: true +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-11-01/bicepClient.json b/specification/resources/resource-manager/Microsoft.Resources/bicep/stable/2023-11-01/bicepClient.json similarity index 90% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-11-01/bicepClient.json rename to specification/resources/resource-manager/Microsoft.Resources/bicep/stable/2023-11-01/bicepClient.json index 876cdb1973ba..34efa79757e8 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-11-01/bicepClient.json +++ b/specification/resources/resource-manager/Microsoft.Resources/bicep/stable/2023-11-01/bicepClient.json @@ -48,10 +48,10 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "decompileOperationRequest", @@ -73,7 +73,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" } } } diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-11-01/examples/DecompileBicep.json b/specification/resources/resource-manager/Microsoft.Resources/bicep/stable/2023-11-01/examples/DecompileBicep.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-11-01/examples/DecompileBicep.json rename to specification/resources/resource-manager/Microsoft.Resources/bicep/stable/2023-11-01/examples/DecompileBicep.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/deploymentScripts.json similarity index 98% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/deploymentScripts.json index 05cc3a50b8ec..b349febd0635 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/deploymentScripts.json @@ -80,14 +80,14 @@ } ], "responses": { - "201": { - "description": "Created -- Deployment script created.", + "200": { + "description": "OK -- Deployment script is updated.", "schema": { "$ref": "#/definitions/DeploymentScript" } }, - "200": { - "description": "OK -- Deployment script is updated.", + "201": { + "description": "Created -- Deployment script created.", "schema": { "$ref": "#/definitions/DeploymentScript" } @@ -449,7 +449,7 @@ "systemData": { "readOnly": true, "description": "The system metadata related to this resource.", - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" } }, "allOf": [ @@ -735,7 +735,7 @@ }, "error": { "description": "Error that is relayed from the script execution.", - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } } }, @@ -887,7 +887,7 @@ "DeploymentScriptsError": { "properties": { "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } }, "description": "Deployment scripts error response." diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Delete.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_Delete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Delete.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_Delete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogs.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogs.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogs.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogs.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogsDefault.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogsDefault.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogsDefault.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogsDefault.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogsDefaultWithTail.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogsDefaultWithTail.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogsDefaultWithTail.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogsDefaultWithTail.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.csharp.md b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.csharp.md new file mode 100644 index 000000000000..fdd7ed1c5f2a --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.csharp.md @@ -0,0 +1,15 @@ +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Azure.ResourceManager.Resources.DeploymentScripts + output-folder: $(csharp-sdks-folder)/resources/Azure.ResourceManager.Resources.DeploymentScripts/GeneratedProtocol +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.go.md b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.go.md new file mode 100644 index 000000000000..bbaf60644d7c --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.go.md @@ -0,0 +1,12 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + + +``` yaml $(go) && $(track2) +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/resourcemanager/resources/armdeploymentscripts +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +azure-arm: true +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.java.md b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.java.md new file mode 100644 index 000000000000..fd2111534b88 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.java.md @@ -0,0 +1,14 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +java: + azure-arm: true + fluent: true + namespace: com.microsoft.azure.management.resources.deploymentscripts + output-folder: $(azure-libraries-for-java-folder)/sdk/resources/deploymentscripts + license-header: MICROSOFT_MIT_NO_CODEGEN + payload-flattening-threshold: 1 +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.md b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.md new file mode 100644 index 000000000000..d6355664d31a --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.md @@ -0,0 +1,166 @@ +# DeploymentScripts + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for DeploymentScripts. + +## Getting Started + +To build the SDKs for DeploymentScripts, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the DeploymentScripts client. + +``` yaml +title: DeploymentScriptsClient +description: DeploymentScripts Client +openapi-type: arm +tag: package-2023-08 +``` + +--- + +### Tag: package-2019-10 + +These settings apply only when `--tag=package-2019-10` is specified on the command line. + +``` yaml $(tag) == 'package-2019-10' +input-file: + - preview/2019-10-01-preview/deploymentScripts.json +``` + +### Tag: package-2020-10 + +These settings apply only when `--tag=package-2020-10` is specified on the command line. + +``` yaml $(tag) == 'package-2020-10' +input-file: + - stable/2020-10-01/deploymentScripts.json +``` + +### Tag: package-2023-08 + +These settings apply only when `--tag=package-2023-08` is specified on the command line. + +``` yaml $(tag) == 'package-2023-08' +input-file: + - stable/2023-08-01/deploymentScripts.json +``` + +## Suppression + +``` yaml +directive: + - from: deploymentScripts.json + suppress: TrackedResourceGetOperation + where: $.definitions.AzureCliScript + reason: Tooling issue. + - from: deploymentScripts.json + suppress: TrackedResourcePatchOperation + where: $.definitions.AzureCliScript + reason: Tooling issue. + - from: deploymentScripts.json + suppress: TrackedResourceGetOperation + where: $.definitions.AzurePowerShellScript + reason: Tooling issue + - from: deploymentScripts.json + suppress: TrackedResourcePatchOperation + where: $.definitions.AzurePowerShellScript + reason: Tooling issue + - suppress: IntegerTypeMustHaveFormat + from: deploymentScripts.json + reason: Tooling issue, default is int32, explicitly mentioning the format as per doc, it still flags breaking change. + - suppress: ResourceNameRestriction + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PropertiesTypeObjectNoDefinition + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: SubscriptionsAndResourceGroupCasing + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: ParametersInPointGet + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: GetCollectionOnlyHasValueAndNextLink + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PatchIdentityProperty + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: LroErrorContent + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: ProvisioningStateSpecifiedForLROPut + from: deploymentScripts.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - from: deploymentScripts.json + suppress: R3006 + where: + - $.definitions.DeploymentScript.properties + - $.definitions.AzureCliScript.properties + - $.definitions.AzurePowerShellScript.properties + reason: Currently systemData is not allowed + - suppress: OperationsAPIImplementation + from: deploymentScripts.json + reason: Operations API is implemented as a separate service. + - suppress: XmsPageableForListCalls + from: deploymentScripts.json + reason: Pre-existing lint error. + - suppress: AvoidAdditionalProperties + from: deploymentScripts.json + reason: Pre-existing lint error. + - suppress: MissingTypeObject + from: deploymentScripts.json + reason: Pre-existing lint error. +``` + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-net + - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-powershell +``` + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Java + +See configuration in [readme.java.md](./readme.java.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) diff --git a/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.python.md b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.python.md new file mode 100644 index 000000000000..f5bf08a7a3e6 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.python.md @@ -0,0 +1,18 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(python) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-resources-deploymentscripts +namespace: azure.mgmt.resources.deploymentscripts +package-version: 1.0.0 +clear-output-folder: true +``` + +``` yaml $(python) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resources-deploymentscripts/azure/mgmt/resources/deploymentscripts +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.typescript.md b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.typescript.md new file mode 100644 index 000000000000..528aaa20249f --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-resourcesdeploymentscripts" + output-folder: "$(typescript-sdks-folder)/sdk/resources/arm-resourcesdeploymentscripts" + override-client-name: DeploymentScriptsClient + generate-metadata: true +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/deploymentScripts.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/deploymentScripts.json similarity index 98% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/deploymentScripts.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/deploymentScripts.json index 2cb992cdb75a..83e89dee2eb6 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/deploymentScripts.json +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/deploymentScripts.json @@ -83,14 +83,14 @@ } ], "responses": { - "201": { - "description": "Created -- Deployment script created.", + "200": { + "description": "OK -- Deployment script is updated.", "schema": { "$ref": "#/definitions/DeploymentScript" } }, - "200": { - "description": "OK -- Deployment script is updated.", + "201": { + "description": "Created -- Deployment script created.", "schema": { "$ref": "#/definitions/DeploymentScript" } @@ -451,7 +451,7 @@ "systemData": { "readOnly": true, "description": "The system metadata related to this resource.", - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" } }, "allOf": [ @@ -739,7 +739,7 @@ }, "error": { "description": "Error that is relayed from the script execution.", - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } } }, @@ -891,7 +891,7 @@ "DeploymentScriptsError": { "properties": { "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } }, "description": "Deployment scripts error response." diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Create.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Create.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Create.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Create.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Create_No_UserManagedIdentity.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Create_No_UserManagedIdentity.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Create_No_UserManagedIdentity.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Create_No_UserManagedIdentity.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Delete.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Delete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Delete.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Delete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Get.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Get.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Get.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Get.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_GetLogs.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_GetLogs.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_GetLogs.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_GetLogs.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_GetLogsDefault.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_GetLogsDefault.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_GetLogsDefault.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_GetLogsDefault.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_GetLogsDefaultWithTail.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_GetLogsDefaultWithTail.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_GetLogsDefaultWithTail.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_GetLogsDefaultWithTail.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_ListByResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_ListByResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_ListByResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_ListByResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_ListBySubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_ListBySubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_ListBySubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_ListBySubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Min_Create.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Min_Create.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Min_Create.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Min_Create.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Update.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Update.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/DeploymentScripts_Update.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2020-10-01/examples/DeploymentScripts_Update.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/deploymentScripts.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/deploymentScripts.json similarity index 98% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/deploymentScripts.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/deploymentScripts.json index d235b9000995..db10ed2b2494 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/deploymentScripts.json +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/deploymentScripts.json @@ -86,14 +86,14 @@ } ], "responses": { - "201": { - "description": "Created -- Deployment script created.", + "200": { + "description": "OK -- Deployment script is updated.", "schema": { "$ref": "#/definitions/DeploymentScript" } }, - "200": { - "description": "OK -- Deployment script is updated.", + "201": { + "description": "Created -- Deployment script created.", "schema": { "$ref": "#/definitions/DeploymentScript" } @@ -454,7 +454,7 @@ "systemData": { "readOnly": true, "description": "The system metadata related to this resource.", - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" } }, "allOf": [ @@ -777,7 +777,7 @@ }, "error": { "description": "Error that is relayed from the script execution.", - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } } }, @@ -932,7 +932,7 @@ "type": "object", "properties": { "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } }, "description": "Deployment scripts error response." diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Create.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Create.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Create.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Create.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Create_No_UserManagedIdentity.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Create_No_UserManagedIdentity.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Create_No_UserManagedIdentity.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Create_No_UserManagedIdentity.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Create_Using_Custom_Aci_Name.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Create_Using_Custom_Aci_Name_With_SubnetIds.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Create_Using_Custom_Aci_Name_With_SubnetIds.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Create_Using_Custom_Aci_Name_With_SubnetIds.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Create_Using_Custom_Aci_Name_With_SubnetIds.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Create_Using_Existing_StorageAccount.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Delete.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Delete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Delete.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Delete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Get.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Get.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Get.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Get.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_GetLogs.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_GetLogs.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_GetLogs.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_GetLogs.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_GetLogsDefault.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_GetLogsDefault.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_GetLogsDefault.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_GetLogsDefault.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_GetLogsDefaultWithTail.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_GetLogsDefaultWithTail.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_GetLogsDefaultWithTail.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_GetLogsDefaultWithTail.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_ListByResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_ListByResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_ListByResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_ListByResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_ListBySubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_ListBySubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_ListBySubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_ListBySubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Min_Create.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Min_Create.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Min_Create.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Min_Create.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Update.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Update.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-08-01/examples/DeploymentScripts_Update.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentScripts/stable/2023-08-01/examples/DeploymentScripts_Update.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/deploymentStacks.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/deploymentStacks.json similarity index 91% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/deploymentStacks.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/deploymentStacks.json index f2b8ae36b439..a9f6372633d6 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/deploymentStacks.json +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/deploymentStacks.json @@ -48,13 +48,13 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -90,10 +90,10 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -132,7 +132,7 @@ "$ref": "#/parameters/ManagementGroupIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -172,16 +172,16 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "deploymentStack", @@ -227,16 +227,16 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -271,10 +271,10 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" @@ -286,7 +286,7 @@ "$ref": "#/parameters/DeleteResourceGroupParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -331,13 +331,13 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "deploymentStack", @@ -383,13 +383,13 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -424,7 +424,7 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" @@ -436,7 +436,7 @@ "$ref": "#/parameters/DeleteResourceGroupParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -487,7 +487,7 @@ "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "deploymentStack", @@ -539,7 +539,7 @@ "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -589,7 +589,7 @@ "$ref": "#/parameters/DeleteManagementGroupParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -630,16 +630,16 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -672,13 +672,13 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -717,7 +717,7 @@ "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1125,7 +1125,7 @@ "readOnly": true, "type": "object", "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/systemData" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/systemData" } } }, @@ -1133,7 +1133,7 @@ "type": "object", "properties": { "error": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } }, "description": "Deployment Stacks error response." diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackExportTemplate.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackExportTemplate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackExportTemplate.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackExportTemplate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupCreate.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupCreate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupCreate.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupCreate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupDelete.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupDelete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupDelete.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupDelete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupExportTemplate.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupExportTemplate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupExportTemplate.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupExportTemplate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupGet.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupGet.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupList.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupList.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupList.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackManagementGroupList.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupCreate.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupCreate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupCreate.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupCreate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupDelete.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupDelete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupDelete.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupDelete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupGet.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupGet.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupList.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupList.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupList.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackResourceGroupList.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionCreate.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionCreate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionCreate.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionCreate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionDelete.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionDelete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionDelete.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionDelete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionExportTemplate.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionExportTemplate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionExportTemplate.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionExportTemplate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionGet.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionGet.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionList.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionList.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionList.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/preview/2022-08-01-preview/examples/DeploymentStackSubscriptionList.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.csharp.md b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.csharp.md new file mode 100644 index 000000000000..09dc01d5b8ad --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.csharp.md @@ -0,0 +1,15 @@ +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Azure.ResourceManager.Resources.DeploymentStacks + output-folder: $(csharp-sdks-folder)/resources/Azure.ResourceManager.Resources.DeploymentStacks/GeneratedProtocol +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.go.md b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.go.md new file mode 100644 index 000000000000..40177eedbe92 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.go.md @@ -0,0 +1,12 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + + +``` yaml $(go) && $(track2) +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/resourcemanager/resources/armdeploymentstacks +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +azure-arm: true +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.java.md b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.java.md new file mode 100644 index 000000000000..fde194d8fd45 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.java.md @@ -0,0 +1,14 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +java: + azure-arm: true + fluent: true + namespace: com.microsoft.azure.management.resources.deploymentstacks + output-folder: $(azure-libraries-for-java-folder)/sdk/resources/deploymentstacks + license-header: MICROSOFT_MIT_NO_CODEGEN + payload-flattening-threshold: 1 +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.md b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.md new file mode 100644 index 000000000000..e8c70219e742 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.md @@ -0,0 +1,132 @@ +# DeploymentStacks + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for DeploymentStacks. + +## Getting Started + +To build the SDKs for DeploymentStacks, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the DeploymentStacks client. + +``` yaml +title: DeploymentStacksClient +description: DeploymentStacks Client +openapi-type: arm +tag: package-2024-03 +``` + +--- + +### Tag: package-2022-08 + +These settings apply only when `--tag=package-2022-08` is specified on the command line. + +``` yaml $(tag) == 'package-2022-08' +input-file: + - preview/2022-08-01-preview/deploymentStacks.json +``` + +### Tag: package-2024-03 + +These settings apply only when `--tag=package-2024-03` is specified on the command line. + +``` yaml $(tag) == 'package-2024-03' +input-file: + - stable/2024-03-01/deploymentStacks.json +``` + +## Suppression + +``` yaml +directive: + - from: deploymentStacks.json + suppress: TrackedResourcePatchOperation + where: $.definitions + reason: Not a tracked resource. + - suppress: PathForTrackedResourceTypes + from: deploymentStacks.json + reason: "A deployment stack resource is a proxy location-mapped resource type." + - suppress: TenantLevelAPIsNotAllowed + from: deploymentStacks.json + reason: "Working with deployment stacks at the management group scope is supported." + - suppress: TrackedResourcePatchOperation + from: deploymentStacks.json + reason: "A deployment stack resource is a proxy location-mapped resource type." + - suppress: AvoidAdditionalProperties + from: deploymentStacks.json + reason: "Deployment properties such as 'parameters', 'outputs', and 'template' are dynamic types. For example, properties of the parameters object are defined by the template content." + - suppress: PostResponseCodes + from: deploymentStacks.json + reason: "Validate endpoints have 200, 202, 400, and default responses. The 400 response inherits the error response." + - suppress: LroErrorContent + from: deploymentStacks.json + reason: Error response is inherited via allOf on flagged response. + - suppress: NoErrorCodeResponses + from: deploymentStacks.json + reason: A 400 response from the validate endpoint indicates a validation failure and should not throw an exception. + - suppress: MissingXmsErrorResponse + from: deploymentStacks.json + reason: A 400 response from the validate endpoint indicates a validation failure and should not throw an exception. + - suppress: DeleteResponseCodes + from: deploymentStacks.json + reason: Deployment stacks supports synchronous delete with 200 response. + - suppress: OperationsAPIImplementation + from: deploymentStacks.json + reason: Operations API is implemented as a separate service. + - suppress: DefaultErrorResponseSchema + from: deploymentStacks.json + reason: Pre-existing lint error. +``` + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-net + - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-powershell +``` + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Java + +See configuration in [readme.java.md](./readme.java.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) diff --git a/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.python.md b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.python.md new file mode 100644 index 000000000000..539830cdb00b --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.python.md @@ -0,0 +1,18 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(python) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-resources-deploymentstacks +namespace: azure.mgmt.resources.deploymentstacks +package-version: 1.0.0 +clear-output-folder: true +``` + +``` yaml $(python) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resources-deploymentstacks/azure/mgmt/resources/deploymentstacks +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.typescript.md b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.typescript.md new file mode 100644 index 000000000000..be6aa4f1712b --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-resourcesdeploymentstacks" + output-folder: "$(typescript-sdks-folder)/sdk/resources/arm-resourcesdeploymentstacks" + override-client-name: DeploymentStacksClient + generate-metadata: true +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/deploymentStacks.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/deploymentStacks.json similarity index 92% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/deploymentStacks.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/deploymentStacks.json index 413d40c0a434..237ec63281b8 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/deploymentStacks.json +++ b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/deploymentStacks.json @@ -48,13 +48,13 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -90,10 +90,10 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -132,7 +132,7 @@ "$ref": "#/parameters/ManagementGroupIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -172,16 +172,16 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "deploymentStack", @@ -227,16 +227,16 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -271,10 +271,10 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" @@ -292,7 +292,7 @@ "$ref": "#/parameters/BypassStackOutOfSyncErrorParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -337,13 +337,13 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "deploymentStack", @@ -389,13 +389,13 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -430,7 +430,7 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" @@ -448,7 +448,7 @@ "$ref": "#/parameters/BypassStackOutOfSyncErrorParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -499,7 +499,7 @@ "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "deploymentStack", @@ -551,7 +551,7 @@ "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -604,7 +604,7 @@ "$ref": "#/parameters/BypassStackOutOfSyncErrorParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -645,16 +645,16 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -687,13 +687,13 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -732,7 +732,7 @@ "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -769,16 +769,16 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "deploymentStack", @@ -843,13 +843,13 @@ }, "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "deploymentStack", @@ -920,7 +920,7 @@ "$ref": "#/parameters/DeploymentStackNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" }, { "name": "deploymentStack", @@ -1290,7 +1290,7 @@ "type": "object", "properties": { "error": { - "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail" + "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail" } }, "description": "Deployment Stacks error response." @@ -1372,7 +1372,7 @@ "systemData": { "readOnly": true, "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", - "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/systemData" + "$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/systemData" } } }, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackExportTemplate.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackExportTemplate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackExportTemplate.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackExportTemplate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackManagementGroupCreate.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackManagementGroupCreate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackManagementGroupCreate.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackManagementGroupCreate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackManagementGroupDelete.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackManagementGroupDelete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackManagementGroupDelete.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackManagementGroupDelete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackManagementGroupExportTemplate.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackManagementGroupExportTemplate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackManagementGroupExportTemplate.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackManagementGroupExportTemplate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackManagementGroupGet.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackManagementGroupGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackManagementGroupGet.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackManagementGroupGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackManagementGroupList.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackManagementGroupList.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackManagementGroupList.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackManagementGroupList.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackManagementGroupValidate.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackManagementGroupValidate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackManagementGroupValidate.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackManagementGroupValidate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackResourceGroupCreate.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackResourceGroupCreate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackResourceGroupCreate.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackResourceGroupCreate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackResourceGroupDelete.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackResourceGroupDelete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackResourceGroupDelete.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackResourceGroupDelete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackResourceGroupGet.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackResourceGroupGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackResourceGroupGet.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackResourceGroupGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackResourceGroupList.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackResourceGroupList.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackResourceGroupList.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackResourceGroupList.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackResourceGroupValidate.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackResourceGroupValidate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackResourceGroupValidate.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackResourceGroupValidate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackSubscriptionCreate.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackSubscriptionCreate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackSubscriptionCreate.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackSubscriptionCreate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackSubscriptionDelete.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackSubscriptionDelete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackSubscriptionDelete.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackSubscriptionDelete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackSubscriptionExportTemplate.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackSubscriptionExportTemplate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackSubscriptionExportTemplate.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackSubscriptionExportTemplate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackSubscriptionGet.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackSubscriptionGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackSubscriptionGet.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackSubscriptionGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackSubscriptionList.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackSubscriptionList.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackSubscriptionList.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackSubscriptionList.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackSubscriptionValidate.json b/specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackSubscriptionValidate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/DeploymentStackSubscriptionValidate.json rename to specification/resources/resource-manager/Microsoft.Resources/deploymentStacks/stable/2024-03-01/examples/DeploymentStackSubscriptionValidate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.csharp.md b/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.csharp.md new file mode 100644 index 000000000000..21d5cee7cb29 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.csharp.md @@ -0,0 +1,15 @@ +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Azure.ResourceManager.Resources.Deployments + output-folder: $(csharp-sdks-folder)/resources/Azure.ResourceManager.Resources.Deployments/GeneratedProtocol +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.go.md b/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.go.md new file mode 100644 index 000000000000..3eba25026226 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.go.md @@ -0,0 +1,12 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + + +``` yaml $(go) && $(track2) +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/resourcemanager/resources/armdeployments +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +azure-arm: true +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.java.md b/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.java.md new file mode 100644 index 000000000000..1a5245e7be1b --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.java.md @@ -0,0 +1,14 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +java: + azure-arm: true + fluent: true + namespace: com.microsoft.azure.management.resources.deployments + output-folder: $(azure-libraries-for-java-folder)/sdk/resources/deployments + license-header: MICROSOFT_MIT_NO_CODEGEN + payload-flattening-threshold: 1 +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.md b/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.md new file mode 100644 index 000000000000..f4be347dbe7c --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.md @@ -0,0 +1,470 @@ +# Deployments + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Deployments. + +## Getting Started + +To build the SDKs for Deployments, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the Deployments client. + +``` yaml +title: DeploymentsClient +description: Deployments Client +openapi-type: arm +tag: package-2025-04 +``` + +--- + +### Tag: package-2015-11 + +These settings apply only when `--tag=package-2015-11` is specified on the command line. + +``` yaml $(tag) == 'package-2015-11' +input-file: + - stable/2015-11-01/deployments.json +``` + +### Tag: package-2016-02 + +These settings apply only when `--tag=package-2016-02` is specified on the command line. + +``` yaml $(tag) == 'package-2016-02' +input-file: + - stable/2016-02-01/deployments.json +``` + +### Tag: package-2016-07 + +These settings apply only when `--tag=package-2016-07` is specified on the command line. + +``` yaml $(tag) == 'package-2016-07' +input-file: + - stable/2016-07-01/deployments.json +``` + +### Tag: package-2016-09 + +These settings apply only when `--tag=package-2016-09` is specified on the command line. + +``` yaml $(tag) == 'package-2016-09' +input-file: + - stable/2016-09-01/deployments.json +``` + +### Tag: package-2017-0510 + +These settings apply only when `--tag=package-2017-0510` is specified on the command line. + +``` yaml $(tag) == 'package-2017-0510' +input-file: + - stable/2017-05-10/deployments.json +``` + +### Tag: package-2018-02 + +These settings apply only when `--tag=package-2018-02` is specified on the command line. + +``` yaml $(tag) == 'package-2018-02' +input-file: + - stable/2018-02-01/deployments.json +``` + +### Tag: package-2018-05 + +These settings apply only when `--tag=package-2018-05` is specified on the command line. + +``` yaml $(tag) == 'package-2018-05' +input-file: + - stable/2018-05-01/deployments.json +``` + +### Tag: package-2019-03 + +These settings apply only when `--tag=package-2019-03` is specified on the command line. + +``` yaml $(tag) == 'package-2019-03' +input-file: + - stable/2019-03-01/deployments.json +``` + +### Tag: package-2019-05 + +These settings apply only when `--tag=package-2019-05` is specified on the command line. + +``` yaml $(tag) == 'package-2019-05' +input-file: + - stable/2019-05-01/deployments.json +``` + +### Tag: package-2019-0510 + +These settings apply only when `--tag=package-2019-0510` is specified on the command line. + +``` yaml $(tag) == 'package-2019-0510' +input-file: + - stable/2019-05-10/deployments.json +``` + +### Tag: package-2019-07 + +These settings apply only when `--tag=package-2019-07` is specified on the command line. + +``` yaml $(tag) == 'package-2019-07' +input-file: + - stable/2019-07-01/deployments.json +``` + +### Tag: package-2019-08 + +These settings apply only when `--tag=package-2019-08` is specified on the command line. + +``` yaml $(tag) == 'package-2019-08' +input-file: + - stable/2019-08-01/deployments.json +``` + +### Tag: package-2019-10 + +These settings apply only when `--tag=package-2019-10` is specified on the command line. + +``` yaml $(tag) == 'package-2019-10' +input-file: + - stable/2019-10-01/deployments.json +``` + +### Tag: package-2020-06 + +These settings apply only when `--tag=package-2020-06` is specified on the command line. + +``` yaml $(tag) == 'package-2020-06' +input-file: + - stable/2020-06-01/deployments.json +``` + +### Tag: package-2020-08 + +These settings apply only when `--tag=package-2020-08` is specified on the command line. + +``` yaml $(tag) == 'package-2020-08' +input-file: + - stable/2020-08-01/deployments.json +``` + +### Tag: package-2020-10 + +These settings apply only when `--tag=package-2020-10` is specified on the command line. + +``` yaml $(tag) == 'package-2020-10' +input-file: + - stable/2020-10-01/deployments.json +``` + +### Tag: package-2021-01 + +These settings apply only when `--tag=package-2021-01` is specified on the command line. + +``` yaml $(tag) == 'package-2021-01' +input-file: + - stable/2021-01-01/deployments.json +``` + +### Tag: package-2021-04 + +These settings apply only when `--tag=package-2021-04` is specified on the command line. + +``` yaml $(tag) == 'package-2021-04' +input-file: + - stable/2021-04-01/deployments.json +``` + +### Tag: package-2022-09 + +These settings apply only when `--tag=package-2022-09` is specified on the command line. + +``` yaml $(tag) == 'package-2022-09' +input-file: + - stable/2022-09-01/deployments.json +``` + +### Tag: package-2023-07 + +These settings apply only when `--tag=package-2023-07` is specified on the command line. + +``` yaml $(tag) == 'package-2023-07' +input-file: + - stable/2023-07-01/deployments.json +``` + +### Tag: package-2024-03 + +These settings apply only when `--tag=package-2024-03` is specified on the command line. + +``` yaml $(tag) == 'package-2024-03' +input-file: + - stable/2024-03-01/deployments.json +``` + +### Tag: package-2024-07 + +These settings apply only when `--tag=package-2024-07` is specified on the command line. + +``` yaml $(tag) == 'package-2024-07' +input-file: + - stable/2024-07-01/deployments.json +``` + +### Tag: package-2024-11 + +These settings apply only when `--tag=package-2024-11` is specified on the command line. + +``` yaml $(tag) == 'package-2024-11' +input-file: + - stable/2024-11-01/deployments.json +``` + +### Tag: package-2025-03 + +These settings apply only when `--tag=package-2025-03` is specified on the command line. + +``` yaml $(tag) == 'package-2025-03' +input-file: + - stable/2025-03-01/deployments.json +``` + +### Tag: package-2025-04 + +These settings apply only when `--tag=package-2025-04` is specified on the command line. + +``` yaml $(tag) == 'package-2025-04' +input-file: + - stable/2025-04-01/deployments.json +``` + +## Suppression + +``` yaml +directive: + - suppress: UniqueResourcePaths + from: deployments.json + where: $.paths + reason: route definitions under an extension resource with Microsoft.Management + - suppress: DescriptionAndTitleMissing + where: $.definitions.AliasPathMetadata + from: deployments.json + reason: This was already checked in - not my code + - suppress: XMS_EXAMPLE_NOTFOUND_ERROR + where: $.paths + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: OperationsApiResponseSchema + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: OperationsApiSchemaUsesCommonTypes + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: NoDuplicatePathsForScopeParameter + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: LroLocationHeader + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: LroErrorContent + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: NoErrorCodeResponses + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PutRequestResponseSchemeArm + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PutResponseSchemaDescription + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PostOperationAsyncResponseValidation + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: MissingXmsErrorResponse + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PathForPutOperation + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PathResourceProviderMatchNamespace + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: ParametersOrder + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: SyncPostReturn + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PathContainsResourceType + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: OperationIdNounVerb + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PathForResourceAction + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: UnSupportedPatchProperties + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: LroPostReturn + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: ProvisioningStateSpecifiedForLROPut + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: ProvisioningStateSpecifiedForLROPatch + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: SubscriptionsAndResourceGroupCasing + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: ResourceNameRestriction + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: ConsistentPatchProperties + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: GetCollectionOnlyHasValueAndNextLink + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: MissingTypeObject + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: TrackedResourcePatchOperation + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: IntegerTypeMustHaveFormat + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: BodyTopLevelProperties + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: TopLevelResourcesListBySubscription + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: XmsParameterLocation + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: PathForTrackedResourceTypes + from: deployments.json + reason: Not a tracked resource type. Cannot change anything due to design philosophy in ARM. + - suppress: PostResponseCodes + from: deployments.json + reason: Breaking change in order to change the API response code. + - suppress: TenantLevelAPIsNotAllowed + from: deployments.json + reason: Tenant level API's are allowed as an exception in ARM repo. It is a breaking change to modify it. + - suppress: XmsPageableForListCalls + from: deployments.json + reason: Shared swagger with other teams. We cannot make changes to the API as we don't own it. + - suppress: EvenSegmentedPathForPutOperation + from: deployments.json + reason: Linter rule limitation. The API has never been changed since inception. Would be a breaking change. + - suppress: DeleteResponseCodes + from: deployments.json + reason: Breaking change in order to change the API response code. + - suppress: PutResponseCodes + from: deployments.json + reason: Breaking change in order to change the API response code. + - suppress: AvoidAdditionalProperties + from: deployments.json + reason: Breaking change in order to change the property names for multiple API's. Will fix in the future. + - suppress: XmsExamplesRequired + from: deployments.json + reason: Xms Examples required is a pre-existing lint error. Not related to this version release. Will fix in the future. + - suppress: RequiredReadOnlySystemData + from: deployments.json + reason: Pre-existing lint error. Not related to this version release. Will fix in the future + - suppress: TrackedExtensionResourcesAreNotAllowed + from: deployments.json + reason: "The deployments resource type is ProxyOnly." + - suppress: RequiredPropertiesMissingInResourceModel + from: deployments.json + where: $.definitions.Provider + reason: "Historically some properties have not been returned for this model and reviewer said OK to suppress." + - suppress: RequiredPropertiesMissingInResourceModel + from: deployments.json + where: $.definitions.DeploymentOperation + reason: "Historically some properties have not been returned for this model and reviewer said OK to suppress." + - suppress: RequiredPropertiesMissingInResourceModel + from: deployments.json + where: $.definitions.DeploymentOperationsListResult + reason: "Historically some properties have not been returned for this model and reviewer said OK to suppress." + - suppress: OperationsAPIImplementation + from: deployments.json + reason: Operations API is implemented as a separate service. + - suppress: ProvisioningStateMustBeReadOnly + from: deployments.json + reason: Pre-existing lint error. + - suppress: RequiredDefaultResponse + from: deployments.json + reason: Pre-existing lint error. + - suppress: RequiredPropertiesMissingInResourceModel + from: deployments.json + reason: Pre-existing lint error. + - suppress: RequestSchemaForTrackedResourcesMustHaveTags + from: deployments.json + reason: Pre-existing lint error. + - suppress: DescriptionMustNotBeNodeName + from: deployments.json + reason: Pre-existing lint error. +``` + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-net + - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-powershell +``` + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Java + +See configuration in [readme.java.md](./readme.java.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.python.md b/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.python.md new file mode 100644 index 000000000000..87778575326b --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.python.md @@ -0,0 +1,18 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(python) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-resources-deployments +namespace: azure.mgmt.resources.deployments +package-version: 1.0.0 +clear-output-folder: true +``` + +``` yaml $(python) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resources-deployments/azure/mgmt/resources/deployments +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.typescript.md b/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.typescript.md new file mode 100644 index 000000000000..16d6df79fb59 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-resourcesdeployments" + output-folder: "$(typescript-sdks-folder)/sdk/resources/arm-resourcesdeployments" + override-client-name: DeploymentsClient + generate-metadata: true +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2015-11-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2015-11-01/deployments.json new file mode 100644 index 000000000000..d18d93e8fa30 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2015-11-01/deployments.json @@ -0,0 +1,973 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2015-11-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "description": "Begin deleting deployment.To determine whether the operation has finished processing the request, call GetLongRunningOperationStatus.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to be deleted." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "" + }, + "204": { + "description": "" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "" + }, + "404": { + "description": "" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "description": "Create a named template deployment using a template.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Get a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "description": "Cancel a currently running template deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "description": "Validate a deployment template.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Deployment to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_List", + "description": "Get a list of deployments.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to filter by. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Query parameters. If null is passed returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Get a list of deployments operations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "Operation Id." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets a list of deployments operations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Query parameters." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "Gets or sets the provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "URI referencing the template." + }, + "contentVersion": { + "type": "string", + "description": "If included it must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "URI referencing the template." + }, + "contentVersion": { + "type": "string", + "description": "If included it must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "Gets or sets the template content. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "Gets or sets the URI referencing the template. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "Gets or sets the URI referencing the parameters. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "Gets or sets the deployment mode.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + } + }, + "description": "Deployment properties." + }, + "Deployment": { + "properties": { + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "Gets or sets the deployment properties." + } + }, + "description": "Deployment operation parameters." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ResourceManagementError": { + "properties": { + "code": { + "type": "string", + "description": "Gets or sets the error code returned from the server." + }, + "message": { + "type": "string", + "description": "Gets or sets the error message returned from the server." + }, + "target": { + "type": "string", + "description": "Gets or sets the target of the error." + } + }, + "required": [ + "code", + "message" + ] + }, + "ResourceManagementErrorWithDetails": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceManagementError" + }, + "description": "Gets or sets validation error." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceManagementError" + } + ], + "required": [ + "code", + "message" + ] + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "Gets or sets the resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets or sets the collection of locations where this resource type can be created in." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets or sets the api version." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets the properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "type": "string", + "description": "Gets or sets the provider id." + }, + "namespace": { + "type": "string", + "description": "Gets or sets the namespace of the provider." + }, + "registrationState": { + "type": "string", + "description": "Gets or sets the registration state of the provider." + }, + "resourceTypes": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "Gets or sets the collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "Gets or sets the ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "Gets or sets the dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "Gets or sets the dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "Gets the list of dependencies." + }, + "id": { + "type": "string", + "description": "Gets or sets the ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "Gets or sets the dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "Gets or sets the dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "type": "string", + "description": "Gets or sets the state of the provisioning." + }, + "correlationId": { + "type": "string", + "description": "Gets or sets the correlation ID of the deployment." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "description": "Gets or sets the timestamp of the template deployment." + }, + "outputs": { + "type": "object", + "description": "Gets or sets key/value pairs that represent deployment output." + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "Gets the list of resource providers needed for the deployment." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "Gets the list of deployment dependencies." + }, + "template": { + "type": "object", + "description": "Gets or sets the template content. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "Gets or sets the URI referencing the template. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "Gets or sets the URI referencing the parameters. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "Gets or sets the deployment mode.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails", + "description": "Gets or sets validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Gets or sets the template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Gets or sets the ID of the deployment." + }, + "name": { + "type": "string", + "description": "Gets or sets the name of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Gets or sets deployment properties." + } + }, + "required": [ + "name" + ], + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "Gets or sets the list of deployments." + }, + "nextLink": { + "type": "string", + "description": "Gets or sets the URL to get the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "Gets or sets the ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "Gets or sets the name of the resource." + }, + "resourceType": { + "type": "string", + "description": "Gets or sets the type of the resource." + } + }, + "description": "Target resource." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningState": { + "type": "string", + "description": "Gets or sets the state of the provisioning." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "description": "Gets or sets the date and time of the operation." + }, + "statusCode": { + "type": "string", + "description": "Gets or sets operation status code." + }, + "statusMessage": { + "description": "Gets or sets operation status message." + }, + "targetResource": { + "$ref": "#/definitions/TargetResource", + "description": "Gets or sets the target resource." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "type": "string", + "description": "Gets or sets full deployment operation id." + }, + "operationId": { + "type": "string", + "description": "Gets or sets deployment operation id." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Gets or sets deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "Gets or sets the list of deployments." + }, + "nextLink": { + "type": "string", + "description": "Gets or sets the URL to get the next set of results." + } + }, + "description": "List of deployment operations." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2015-11-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2015-11-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2016-02-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2016-02-01/deployments.json new file mode 100644 index 000000000000..5542ed7024fc --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2016-02-01/deployments.json @@ -0,0 +1,1112 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2016-02-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "description": "Delete deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to be deleted." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "" + }, + "204": { + "description": "" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "" + }, + "404": { + "description": "" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "description": "Create a named template deployment using a template.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Get a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "description": "Cancel a currently running template deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "description": "Validate a deployment template.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Deployment to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports a deployment template.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_List", + "description": "Get a list of deployments.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to filter by. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Query parameters. If null is passed returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Get a list of deployments operations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "Operation Id." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets a list of deployments operations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Query parameters." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "URI referencing the template." + }, + "contentVersion": { + "type": "string", + "description": "If included it must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "URI referencing the template." + }, + "contentVersion": { + "type": "string", + "description": "If included it must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. It can be a JObject or a well formed JSON string. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The template URI. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. It can be a JObject or a well formed JSON string. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The parameters URI. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "The deployment mode.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "x-ms-client-flatten": true, + "type": "string", + "description": "The debug detail level." + } + } + }, + "Deployment": { + "properties": { + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + } + }, + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ResourceManagementErrorWithDetails": { + "properties": { + "code": { + "type": "string", + "description": "The error code returned from the server." + }, + "message": { + "type": "string", + "description": "The error message returned from the server." + }, + "target": { + "type": "string", + "description": "The target of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails" + }, + "description": "Validation error." + } + }, + "required": [ + "code", + "message" + ] + }, + "AliasPathType": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The api versions." + } + } + }, + "AliasType": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPathType" + }, + "description": "The paths for an alias." + } + } + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created in." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasType" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The api version." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "type": "string", + "description": "The provider id." + }, + "namespace": { + "type": "string", + "description": "The namespace of the provider." + }, + "registrationState": { + "type": "string", + "description": "The registration state of the provider." + }, + "resourceTypes": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The state of the provisioning." + }, + "correlationId": { + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "outputs": { + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "template": { + "type": "object", + "description": "The template content. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "The deployment mode.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails", + "description": "Validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "type": "string", + "description": "The name of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + } + }, + "required": [ + "name" + ], + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "The list of deployments." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + } + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "serviceRequestId": { + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "type": "string", + "description": "Operation status code." + }, + "statusMessage": { + "description": "Operation status message." + }, + "targetResource": { + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "type": "string", + "description": "Full deployment operation id." + }, + "operationId": { + "type": "string", + "description": "Deployment operation id." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "The list of deployments." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2016-02-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2016-02-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2016-07-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2016-07-01/deployments.json new file mode 100644 index 000000000000..7ce2f7faed7f --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2016-07-01/deployments.json @@ -0,0 +1,1136 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2016-07-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "description": "Delete deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to be deleted." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "" + }, + "204": { + "description": "" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "" + }, + "404": { + "description": "" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "description": "Create a named template deployment using a template.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Get a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "description": "Cancel a currently running template deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "description": "Validate a deployment template.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Deployment to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports a deployment template.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_List", + "description": "Get a list of deployments.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to filter by. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Query parameters. If null is passed returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Get a list of deployments operations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "Operation Id." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets a list of deployments operations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Query parameters." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "URI referencing the template." + }, + "contentVersion": { + "type": "string", + "description": "If included it must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "URI referencing the template." + }, + "contentVersion": { + "type": "string", + "description": "If included it must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. It can be a JObject or a well formed JSON string. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The template URI. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. It can be a JObject or a well formed JSON string. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The parameters URI. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "The deployment mode.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "x-ms-client-flatten": true, + "type": "string", + "description": "The debug detail level." + } + } + }, + "Deployment": { + "properties": { + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + } + }, + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ResourceManagementErrorWithDetails": { + "properties": { + "code": { + "type": "string", + "description": "The error code returned from the server." + }, + "message": { + "type": "string", + "description": "The error message returned from the server." + }, + "target": { + "type": "string", + "description": "The target of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails" + }, + "description": "Validation error." + } + }, + "required": [ + "code", + "message" + ] + }, + "AliasPathType": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The api versions." + } + }, + "description": "The type of the paths for alias. " + }, + "AliasType": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPathType" + }, + "description": "The paths for an alias." + } + }, + "description": "The alias type. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created in." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasType" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The api version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "type": "string", + "description": "The provider id." + }, + "namespace": { + "type": "string", + "description": "The namespace of the provider." + }, + "registrationState": { + "type": "string", + "description": "The registration state of the provider." + }, + "resourceTypes": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The state of the provisioning." + }, + "correlationId": { + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "outputs": { + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "template": { + "type": "object", + "description": "The template content. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "The deployment mode.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails", + "description": "Validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "type": "string", + "description": "The name of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + } + }, + "required": [ + "name" + ], + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "The list of deployments." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + } + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "serviceRequestId": { + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "type": "string", + "description": "Operation status code." + }, + "statusMessage": { + "description": "Operation status message." + }, + "targetResource": { + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "type": "string", + "description": "Full deployment operation id." + }, + "operationId": { + "type": "string", + "description": "Deployment operation id." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "The list of deployments." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2016-07-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2016-07-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2016-09-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2016-09-01/deployments.json new file mode 100644 index 000000000000..0108191fd996 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2016-09-01/deployments.json @@ -0,0 +1,1186 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2016-09-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to delete.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to check.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to cancel.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment from which to get the template.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_List", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment with the operation to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + } + }, + "Deployment": { + "properties": { + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ResourceManagementErrorWithDetails": { + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The error code returned when exporting the template." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message describing the export error." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The target of the error." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails" + }, + "description": "Validation error." + } + } + }, + "AliasPathType": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + } + }, + "description": "The type of the paths for alias. " + }, + "AliasType": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPathType" + }, + "description": "The paths for an alias." + } + }, + "description": "The alias type. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasType" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "outputs": { + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "template": { + "type": "object", + "description": "The template content. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails", + "description": "Validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "type": "string", + "description": "The name of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + } + }, + "required": [ + "name" + ], + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + } + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message." + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2016-09-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2016-09-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2017-05-10/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2017-05-10/deployments.json new file mode 100644 index 000000000000..a94d51a7a597 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2017-05-10/deployments.json @@ -0,0 +1,1189 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2017-05-10", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to delete.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to check.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to cancel.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment from which to get the template.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment with the operation to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + } + }, + "Deployment": { + "properties": { + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ResourceManagementErrorWithDetails": { + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The error code returned when exporting the template." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message describing the export error." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The target of the error." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails" + }, + "description": "Validation error." + } + }, + "description": "The detailed error message of resource management." + }, + "AliasPathType": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + } + }, + "description": "The type of the paths for alias. " + }, + "AliasType": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPathType" + }, + "description": "The paths for an alias." + } + }, + "description": "The alias type. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasType" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "outputs": { + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "template": { + "type": "object", + "description": "The template content. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails", + "description": "Validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "type": "string", + "description": "The name of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + } + }, + "required": [ + "name" + ], + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message." + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "The operation name." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2017-05-10/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2017-05-10/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-02-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-02-01/deployments.json new file mode 100644 index 000000000000..2dd5f68aac6b --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-02-01/deployments.json @@ -0,0 +1,1253 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2018-02-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to delete.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to check.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to cancel.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment from which to get the template.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment with the operation to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + } + }, + "Deployment": { + "properties": { + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ResourceManagementErrorWithDetails": { + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The error code returned when exporting the template." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message describing the export error." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The target of the error." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails" + }, + "description": "Validation error." + } + }, + "description": "The detailed error message of resource management." + }, + "AliasPathType": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + } + }, + "description": "The type of the paths for alias. " + }, + "AliasType": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPathType" + }, + "description": "The paths for an alias." + } + }, + "description": "The alias type. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasType" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "outputs": { + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "template": { + "type": "object", + "description": "The template content. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails", + "description": "Validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "type": "string", + "description": "The name of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + } + }, + "required": [ + "name" + ], + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code." + }, + "statusMessage": { + "readOnly": true, + "type": "object", + "description": "Operation status message." + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-02-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-02-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-02-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-02-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-02-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-02-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-05-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-05-01/deployments.json new file mode 100644 index 000000000000..3e829bbd27dc --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-05-01/deployments.json @@ -0,0 +1,1667 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2018-05-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to delete.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to check.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to cancel.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment from which to get the template.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to delete.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to check.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to cancel.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment from which to get the template.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment with the operation to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment with the operation to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + } + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ResourceManagementErrorWithDetails": { + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The error code returned when exporting the template." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message describing the export error." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The target of the error." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails" + }, + "description": "Validation error." + } + }, + "description": "The detailed error message of resource management." + }, + "AliasPathType": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + } + }, + "description": "The type of the paths for alias. " + }, + "AliasType": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPathType" + }, + "description": "The paths for an alias." + } + }, + "description": "The alias type. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasType" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "outputs": { + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "template": { + "type": "object", + "description": "The template content. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails", + "description": "Validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code." + }, + "statusMessage": { + "readOnly": true, + "type": "object", + "description": "Operation status message." + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-05-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-05-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-05-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-05-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-05-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2018-05-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-03-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-03-01/deployments.json new file mode 100644 index 000000000000..7d0a81461695 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-03-01/deployments.json @@ -0,0 +1,1676 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2019-03-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to delete.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to check.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to cancel.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment from which to get the template.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to delete.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to check.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment to cancel.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment from which to get the template.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment with the operation to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deployment with the operation to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 64 + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + } + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ResourceManagementErrorWithDetails": { + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The error code returned when exporting the template." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message describing the export error." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The target of the error." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails" + }, + "description": "Validation error." + } + }, + "description": "The detailed error message of resource management." + }, + "AliasPathType": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + } + }, + "description": "The type of the paths for alias. " + }, + "AliasType": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPathType" + }, + "description": "The paths for an alias." + } + }, + "description": "The alias type. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasType" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "outputs": { + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "template": { + "type": "object", + "description": "The template content. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails", + "description": "Validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code." + }, + "statusMessage": { + "readOnly": true, + "type": "object", + "description": "Operation status message." + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-03-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-03-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-03-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-03-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-03-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-03-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-01/deployments.json new file mode 100644 index 000000000000..6311dc0dc444 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-01/deployments.json @@ -0,0 +1,1927 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2019-05-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ResourceManagementErrorWithDetails": { + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The error code returned when exporting the template." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message describing the export error." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The target of the error." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails" + }, + "description": "Validation error." + } + }, + "description": "The detailed error message of resource management." + }, + "AliasPathType": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + } + }, + "description": "The type of the paths for alias. " + }, + "AliasType": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPathType" + }, + "description": "The paths for an alias." + } + }, + "description": "The alias type. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasType" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "template": { + "type": "object", + "description": "The template content. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails", + "description": "Validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code." + }, + "statusMessage": { + "readOnly": true, + "type": "object", + "description": "Operation status message." + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-10/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-10/deployments.json new file mode 100644 index 000000000000..53a0acdd1e1a --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-10/deployments.json @@ -0,0 +1,1927 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2019-05-10", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ResourceManagementErrorWithDetails": { + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The error code returned when exporting the template." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message describing the export error." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The target of the error." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails" + }, + "description": "Validation error." + } + }, + "description": "The detailed error message of resource management." + }, + "AliasPathType": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + } + }, + "description": "The type of the paths for alias. " + }, + "AliasType": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPathType" + }, + "description": "The paths for an alias." + } + }, + "description": "The alias type. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasType" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "template": { + "type": "object", + "description": "The template content. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "$ref": "#/definitions/ResourceManagementErrorWithDetails", + "description": "Validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code." + }, + "statusMessage": { + "readOnly": true, + "type": "object", + "description": "Operation status message." + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-10/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-10/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-10/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-10/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-10/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-10/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-10/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-05-10/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/deployments.json new file mode 100644 index 000000000000..51521835fd68 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/deployments.json @@ -0,0 +1,3214 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2019-07-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "AliasPathType": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + } + }, + "description": "The type of the paths for alias. " + }, + "AliasType": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPathType" + }, + "description": "The paths for an alias." + } + }, + "description": "The alias type. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasType" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "template": { + "type": "object", + "description": "The template content. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code." + }, + "statusMessage": { + "readOnly": true, + "type": "object", + "description": "Operation status message." + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "resourceId", + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + } + ] + } + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "description": "List of resource changes predicted by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of a deployment.", + "x-ms-parameter-location": "method" + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/PostDeploymentWhatIfOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/PostDeploymentWhatIfOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/PostDeploymentWhatIfOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/PostDeploymentWhatIfOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/PostDeploymentWhatIfOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/PostDeploymentWhatIfOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/PutDeploymentAtScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/PutDeploymentAtScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/PutDeploymentAtScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/PutDeploymentAtTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/PutDeploymentAtTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/PutDeploymentAtTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-07-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/deployments.json new file mode 100644 index 000000000000..a2381d13eb8c --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/deployments.json @@ -0,0 +1,3231 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2019-08-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "AliasPathType": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + } + }, + "description": "The type of the paths for alias. " + }, + "AliasType": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPathType" + }, + "description": "The paths for an alias." + } + }, + "description": "The alias type. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasType" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "template": { + "type": "object", + "description": "The template content. Use only one of Template or TemplateLink." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template. Use only one of Template or TemplateLink." + }, + "parameters": { + "type": "object", + "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." + }, + "mode": { + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code." + }, + "statusMessage": { + "readOnly": true, + "type": "object", + "description": "Operation status message." + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "resourceId", + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + } + ] + } + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "description": "List of resource changes predicted by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of a deployment.", + "x-ms-parameter-location": "method" + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/PostDeploymentWhatIfOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PostDeploymentWhatIfOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/PostDeploymentWhatIfOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/PostDeploymentWhatIfOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PostDeploymentWhatIfOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/PostDeploymentWhatIfOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/PutDeploymentAtScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/PutDeploymentAtScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/PutDeploymentAtTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentAtTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/PutDeploymentAtTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-08-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/deployments.json new file mode 100644 index 000000000000..c626815f8af9 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/deployments.json @@ -0,0 +1,3593 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2019-10-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtTenantScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtManagementGroupScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "ScopedDeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPath" + }, + "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." + } + }, + "description": "The alias type. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "readOnly": true, + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "templateLink": { + "readOnly": true, + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template." + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "Deployment parameters. " + }, + "parametersLink": { + "readOnly": true, + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. " + }, + "mode": { + "readOnly": true, + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "readOnly": true, + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "readOnly": true, + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified resource Id." + } + } + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code." + }, + "statusMessage": { + "readOnly": true, + "type": "object", + "description": "Operation status message." + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "resourceId", + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + } + ] + } + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "description": "List of resource changes predicted by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PostDeploymentWhatIfOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PostDeploymentWhatIfOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PostDeploymentWhatIfOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PostDeploymentWhatIfOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PostDeploymentWhatIfOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PostDeploymentWhatIfOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PostDeploymentWhatIfOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PostDeploymentWhatIfOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PostDeploymentWhatIfOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PostDeploymentWhatIfOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PostDeploymentWhatIfOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PostDeploymentWhatIfOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PostDeploymentWhatIfOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PostDeploymentWhatIfOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PutDeploymentAtScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PutDeploymentAtScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PutDeploymentAtTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PutDeploymentAtTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/deployments.json new file mode 100644 index 000000000000..a2d932a62a19 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/deployments.json @@ -0,0 +1,3766 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2020-06-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtTenantScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtManagementGroupScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + }, + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy. Use either the uri or id property, but not both." + }, + "id": { + "type": "string", + "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." + }, + "relativePath": { + "type": "string", + "description": "Applicable only if this template link references a Template Spec. This relativePath property can optionally be used to reference a Template Spec artifact by path." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + }, + "expressionEvaluationOptions": { + "$ref": "#/definitions/ExpressionEvaluationOptions", + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "ScopedDeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ApiProfile": { + "properties": { + "profileVersion": { + "type": "string", + "readOnly": true, + "description": "The profile version." + }, + "apiVersion": { + "type": "string", + "readOnly": true, + "description": "The API version." + } + } + }, + "AliasPathMetadata": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "enum": [ + "NotSpecified", + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" + ], + "x-ms-enum": { + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." + }, + "attributes": { + "type": "string", + "readOnly": true, + "enum": [ + "None", + "Modifiable" + ], + "x-ms-enum": { + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." + } + } + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." + }, + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPath" + }, + "x-ms-identifiers": [], + "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." + }, + "defaultMetadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" + } + }, + "description": "The alias type. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "defaultApiVersion": { + "type": "string", + "readOnly": true, + "description": "The default API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, + "apiProfiles": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "description": "The API profiles for the resource provider." + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Denotes the state of provisioning.", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Ready", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "readOnly": true, + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "templateLink": { + "readOnly": true, + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template." + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "Deployment parameters. " + }, + "parametersLink": { + "readOnly": true, + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. " + }, + "mode": { + "readOnly": true, + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "readOnly": true, + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "readOnly": true, + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified resource Id." + } + } + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", + "$ref": "#/definitions/StatusMessage" + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "resourceId", + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + } + ] + } + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "description": "List of resource changes predicted by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "StatusMessage": { + "type": "object", + "description": "Operation status message object.", + "properties": { + "status": { + "type": "string", + "description": "Status of the deployment operation." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error reported by the operation." + } + } + }, + "ExpressionEvaluationOptions": { + "properties": { + "scope": { + "type": "string", + "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", + "enum": [ + "NotSpecified", + "Outer", + "Inner" + ], + "x-ms-enum": { + "name": "ExpressionEvaluationOptionsScopeType", + "modelAsString": true + } + } + }, + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PostDeploymentWhatIfOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PostDeploymentWhatIfOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PostDeploymentWhatIfOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PostDeploymentWhatIfOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PostDeploymentWhatIfOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PostDeploymentWhatIfOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PostDeploymentWhatIfOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PostDeploymentWhatIfOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PostDeploymentWhatIfOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PostDeploymentWhatIfOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PostDeploymentWhatIfOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PostDeploymentWhatIfOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PostDeploymentWhatIfOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PostDeploymentWhatIfOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PutDeploymentAtScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PutDeploymentAtScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PutDeploymentAtScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PutDeploymentAtTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PutDeploymentAtTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PutDeploymentAtTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-06-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/deployments.json new file mode 100644 index 000000000000..59b86204171a --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/deployments.json @@ -0,0 +1,3770 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2020-08-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtTenantScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtManagementGroupScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + }, + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy. Use either the uri or id property, but not both." + }, + "id": { + "type": "string", + "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." + }, + "relativePath": { + "type": "string", + "description": "Applicable only if this template link references a Template Spec. This relativePath property can optionally be used to reference a Template Spec artifact by path." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "ScopedDeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ApiProfile": { + "properties": { + "profileVersion": { + "type": "string", + "readOnly": true, + "description": "The profile version." + }, + "apiVersion": { + "type": "string", + "readOnly": true, + "description": "The API version." + } + } + }, + "AliasPathMetadata": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "enum": [ + "NotSpecified", + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" + ], + "x-ms-enum": { + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." + }, + "attributes": { + "type": "string", + "readOnly": true, + "enum": [ + "None", + "Modifiable" + ], + "x-ms-enum": { + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." + } + } + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." + }, + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPath" + }, + "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." + }, + "defaultMetadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" + } + }, + "description": "The alias type. " + }, + "ProviderExtendedLocation": { + "properties": { + "location": { + "type": "string", + "description": "The azure location." + }, + "type": { + "type": "string", + "description": "The extended location type." + }, + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." + } + }, + "description": "The provider extended location. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "description": "The location mappings that are supported by this resource type." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "defaultApiVersion": { + "type": "string", + "readOnly": true, + "description": "The default API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, + "apiProfiles": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "description": "The API profiles for the resource provider." + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Denotes the state of provisioning.", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Ready", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "readOnly": true, + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "templateLink": { + "readOnly": true, + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template." + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "Deployment parameters. " + }, + "parametersLink": { + "readOnly": true, + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. " + }, + "mode": { + "readOnly": true, + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "readOnly": true, + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "readOnly": true, + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified resource Id." + } + } + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", + "$ref": "#/definitions/StatusMessage" + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "resourceId", + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + } + ] + } + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "description": "List of resource changes predicted by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "StatusMessage": { + "type": "object", + "description": "Operation status message object.", + "properties": { + "status": { + "type": "string", + "description": "Status of the deployment operation." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error reported by the operation." + } + } + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PostDeploymentWhatIfOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PostDeploymentWhatIfOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PostDeploymentWhatIfOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PostDeploymentWhatIfOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PostDeploymentWhatIfOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PostDeploymentWhatIfOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PostDeploymentWhatIfOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PostDeploymentWhatIfOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PostDeploymentWhatIfOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PostDeploymentWhatIfOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PostDeploymentWhatIfOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PostDeploymentWhatIfOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PostDeploymentWhatIfOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PostDeploymentWhatIfOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PutDeploymentAtScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PutDeploymentAtScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PutDeploymentAtScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PutDeploymentAtTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PutDeploymentAtTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PutDeploymentAtTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-08-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/deployments.json new file mode 100644 index 000000000000..febd3716cba3 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/deployments.json @@ -0,0 +1,3799 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2020-10-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtTenantScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtManagementGroupScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + }, + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + }, + "Create a deployment that will deploy a template with a uri and queryString": { + "$ref": "./examples/PutDeploymentResourceGroup.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy. Use either the uri or id property, but not both." + }, + "id": { + "type": "string", + "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." + }, + "relativePath": { + "type": "string", + "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + }, + "queryString": { + "type": "string", + "description": "The query string (for example, a SAS token) to be used with the templateLink URI." + } + }, + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + }, + "expressionEvaluationOptions": { + "$ref": "#/definitions/ExpressionEvaluationOptions", + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "ScopedDeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ApiProfile": { + "properties": { + "profileVersion": { + "type": "string", + "readOnly": true, + "description": "The profile version." + }, + "apiVersion": { + "type": "string", + "readOnly": true, + "description": "The API version." + } + } + }, + "AliasPathMetadata": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "enum": [ + "NotSpecified", + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" + ], + "x-ms-enum": { + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." + }, + "attributes": { + "type": "string", + "readOnly": true, + "enum": [ + "None", + "Modifiable" + ], + "x-ms-enum": { + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." + } + } + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." + }, + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPath" + }, + "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." + }, + "defaultMetadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" + } + }, + "description": "The alias type. " + }, + "ProviderExtendedLocation": { + "properties": { + "location": { + "type": "string", + "description": "The azure location." + }, + "type": { + "type": "string", + "description": "The extended location type." + }, + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." + } + }, + "description": "The provider extended location. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "description": "The location mappings that are supported by this resource type." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "defaultApiVersion": { + "type": "string", + "readOnly": true, + "description": "The default API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, + "apiProfiles": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "description": "The API profiles for the resource provider." + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Denotes the state of provisioning.", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Ready", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "readOnly": true, + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "templateLink": { + "readOnly": true, + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template." + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "Deployment parameters. " + }, + "parametersLink": { + "readOnly": true, + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. " + }, + "mode": { + "readOnly": true, + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "readOnly": true, + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "readOnly": true, + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified resource Id." + } + } + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", + "$ref": "#/definitions/StatusMessage" + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "resourceId", + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + } + ] + } + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "description": "List of resource changes predicted by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "StatusMessage": { + "type": "object", + "description": "Operation status message object.", + "properties": { + "status": { + "type": "string", + "description": "Status of the deployment operation." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error reported by the operation." + } + } + }, + "ExpressionEvaluationOptions": { + "properties": { + "scope": { + "type": "string", + "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", + "enum": [ + "NotSpecified", + "Outer", + "Inner" + ], + "x-ms-enum": { + "name": "ExpressionEvaluationOptionsScopeType", + "modelAsString": true + } + } + }, + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." + }, + "ZoneMapping": { + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PostDeploymentWhatIfOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PostDeploymentWhatIfOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PostDeploymentWhatIfOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PostDeploymentWhatIfOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PostDeploymentWhatIfOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PostDeploymentWhatIfOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PostDeploymentWhatIfOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PostDeploymentWhatIfOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PostDeploymentWhatIfOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PostDeploymentWhatIfOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PostDeploymentWhatIfOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PostDeploymentWhatIfOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PostDeploymentWhatIfOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PostDeploymentWhatIfOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentAtScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentAtScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentAtScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentAtTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentAtTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentAtTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2020-10-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/deployments.json new file mode 100644 index 000000000000..3e2fa3dc38db --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/deployments.json @@ -0,0 +1,3826 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2021-01-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtTenantScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtManagementGroupScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + }, + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + }, + "Create a deployment that will deploy a template with a uri and queryString": { + "$ref": "./examples/PutDeploymentResourceGroup.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy. Use either the uri or id property, but not both." + }, + "id": { + "type": "string", + "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." + }, + "relativePath": { + "type": "string", + "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + }, + "queryString": { + "type": "string", + "description": "The query string (for example, a SAS token) to be used with the templateLink URI." + } + }, + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + }, + "expressionEvaluationOptions": { + "$ref": "#/definitions/ExpressionEvaluationOptions", + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "ScopedDeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ApiProfile": { + "properties": { + "profileVersion": { + "type": "string", + "readOnly": true, + "description": "The profile version." + }, + "apiVersion": { + "type": "string", + "readOnly": true, + "description": "The API version." + } + } + }, + "AliasPathMetadata": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "enum": [ + "NotSpecified", + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" + ], + "x-ms-enum": { + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." + }, + "attributes": { + "type": "string", + "readOnly": true, + "enum": [ + "None", + "Modifiable" + ], + "x-ms-enum": { + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." + } + } + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." + }, + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPath" + }, + "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." + }, + "defaultMetadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" + } + }, + "description": "The alias type. " + }, + "ProviderExtendedLocation": { + "properties": { + "location": { + "type": "string", + "description": "The azure location." + }, + "type": { + "type": "string", + "description": "The extended location type." + }, + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." + } + }, + "description": "The provider extended location. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "description": "The location mappings that are supported by this resource type." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "defaultApiVersion": { + "type": "string", + "readOnly": true, + "description": "The default API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + } + }, + "apiProfiles": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "description": "The API profiles for the resource provider." + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "description": "The collection of provider resource types." + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Denotes the state of provisioning.", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Ready", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "readOnly": true, + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "templateLink": { + "readOnly": true, + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template." + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "Deployment parameters. " + }, + "parametersLink": { + "readOnly": true, + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. " + }, + "mode": { + "readOnly": true, + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "readOnly": true, + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "readOnly": true, + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified resource Id." + } + } + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", + "$ref": "#/definitions/StatusMessage" + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array", + "NoEffect" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + }, + { + "value": "NoEffect", + "description": "The property will not be set or updated." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "resourceId", + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify", + "Unsupported" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + }, + { + "value": "Unsupported", + "description": "The resource is not supported by What-If." + } + ] + } + }, + "unsupportedReason": { + "type": "string", + "description": "The explanation about why the resource is unsupported by What-If." + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "description": "List of resource changes predicted by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "StatusMessage": { + "type": "object", + "description": "Operation status message object.", + "properties": { + "status": { + "type": "string", + "description": "Status of the deployment operation." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error reported by the operation." + } + } + }, + "ExpressionEvaluationOptions": { + "properties": { + "scope": { + "type": "string", + "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", + "enum": [ + "NotSpecified", + "Outer", + "Inner" + ], + "x-ms-enum": { + "name": "ExpressionEvaluationOptionsScopeType", + "modelAsString": true + } + } + }, + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." + }, + "ZoneMapping": { + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PostDeploymentWhatIfOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PostDeploymentWhatIfOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PostDeploymentWhatIfOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PostDeploymentWhatIfOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PostDeploymentWhatIfOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PostDeploymentWhatIfOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PostDeploymentWhatIfOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PostDeploymentWhatIfOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PostDeploymentWhatIfOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentAtScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentAtScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentAtScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentAtTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentAtTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentAtTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-01-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/deployments.json new file mode 100644 index 000000000000..086b482beabe --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/deployments.json @@ -0,0 +1,3868 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2021-04-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtTenantScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtManagementGroupScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + }, + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + }, + "Create a deployment that will deploy a template with a uri and queryString": { + "$ref": "./examples/PutDeploymentResourceGroup.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy. Use either the uri or id property, but not both." + }, + "id": { + "type": "string", + "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." + }, + "relativePath": { + "type": "string", + "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + }, + "queryString": { + "type": "string", + "description": "The query string (for example, a SAS token) to be used with the templateLink URI." + } + }, + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + }, + "expressionEvaluationOptions": { + "$ref": "#/definitions/ExpressionEvaluationOptions", + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "ScopedDeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ApiProfile": { + "properties": { + "profileVersion": { + "type": "string", + "readOnly": true, + "description": "The profile version." + }, + "apiVersion": { + "type": "string", + "readOnly": true, + "description": "The API version." + } + } + }, + "AliasPathMetadata": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "enum": [ + "NotSpecified", + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" + ], + "x-ms-enum": { + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." + }, + "attributes": { + "type": "string", + "readOnly": true, + "enum": [ + "None", + "Modifiable" + ], + "x-ms-enum": { + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." + } + } + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." + }, + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPath" + }, + "x-ms-identifiers": [], + "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." + }, + "defaultMetadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" + } + }, + "description": "The alias type. " + }, + "ProviderExtendedLocation": { + "properties": { + "location": { + "type": "string", + "description": "The azure location." + }, + "type": { + "type": "string", + "description": "The extended location type." + }, + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." + } + }, + "description": "The provider extended location. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "x-ms-identifiers": [ + "location", + "type" + ], + "description": "The location mappings that are supported by this resource type." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "defaultApiVersion": { + "type": "string", + "readOnly": true, + "description": "The default API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + }, + "x-ms-identifiers": [ + "location" + ] + }, + "apiProfiles": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "x-ms-identifiers": [ + "apiVersion", + "profileVersion" + ], + "description": "The API profiles for the resource provider." + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "x-ms-identifiers": [ + "resourceType" + ], + "description": "The collection of provider resource types." + }, + "providerAuthorizationConsentState": { + "type": "string", + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Denotes the state of provisioning.", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Ready", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "readOnly": true, + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "templateLink": { + "readOnly": true, + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template." + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "Deployment parameters. " + }, + "parametersLink": { + "readOnly": true, + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. " + }, + "mode": { + "readOnly": true, + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "readOnly": true, + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "readOnly": true, + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified resource Id." + } + } + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", + "$ref": "#/definitions/StatusMessage" + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array", + "NoEffect" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + }, + { + "value": "NoEffect", + "description": "The property will not be set or updated." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "resourceId", + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify", + "Unsupported" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + }, + { + "value": "Unsupported", + "description": "The resource is not supported by What-If." + } + ] + } + }, + "unsupportedReason": { + "type": "string", + "description": "The explanation about why the resource is unsupported by What-If." + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "x-ms-identifiers": [ + "resourceId", + "changeType" + ], + "description": "List of resource changes predicted by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "StatusMessage": { + "type": "object", + "description": "Operation status message object.", + "properties": { + "status": { + "type": "string", + "description": "Status of the deployment operation." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error reported by the operation." + } + } + }, + "ExpressionEvaluationOptions": { + "properties": { + "scope": { + "type": "string", + "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", + "enum": [ + "NotSpecified", + "Outer", + "Inner" + ], + "x-ms-enum": { + "name": "ExpressionEvaluationOptionsScopeType", + "modelAsString": true + } + } + }, + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." + }, + "ZoneMapping": { + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Microsoft Azure subscription ID." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PostDeploymentWhatIfOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PostDeploymentWhatIfOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PostDeploymentWhatIfOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PostDeploymentWhatIfOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PostDeploymentWhatIfOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PostDeploymentWhatIfOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PostDeploymentWhatIfOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PostDeploymentWhatIfOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PostDeploymentWhatIfOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentAtScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentAtScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentAtScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentAtTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentAtTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentAtTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2021-04-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/deployments.json new file mode 100644 index 000000000000..9df26660e24c --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/deployments.json @@ -0,0 +1,3919 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2022-09-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtTenantScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtManagementGroupScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + }, + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + }, + "Create a deployment that will deploy a template with a uri and queryString": { + "$ref": "./examples/PutDeploymentResourceGroup.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy. Use either the uri or id property, but not both." + }, + "id": { + "type": "string", + "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." + }, + "relativePath": { + "type": "string", + "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + }, + "queryString": { + "type": "string", + "description": "The query string (for example, a SAS token) to be used with the templateLink URI." + } + }, + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/DeploymentParameter" + }, + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + }, + "expressionEvaluationOptions": { + "$ref": "#/definitions/ExpressionEvaluationOptions", + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DeploymentParameter": { + "type": "object", + "properties": { + "value": { + "description": "Input value to the parameter ." + }, + "reference": { + "$ref": "#/definitions/KeyVaultParameterReference", + "description": "Azure Key Vault parameter reference." + } + }, + "description": "Deployment parameter for the template." + }, + "KeyVaultParameterReference": { + "type": "object", + "properties": { + "keyVault": { + "$ref": "#/definitions/KeyVaultReference", + "description": "Azure Key Vault reference." + }, + "secretName": { + "type": "string", + "description": "Azure Key Vault secret name." + }, + "secretVersion": { + "type": "string", + "description": "Azure Key Vault secret version." + } + }, + "required": [ + "keyVault", + "secretName" + ], + "description": "Azure Key Vault parameter reference." + }, + "KeyVaultReference": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Azure Key Vault resource id." + } + }, + "required": [ + "id" + ], + "description": "Azure Key Vault reference." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "ScopedDeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ApiProfile": { + "properties": { + "profileVersion": { + "type": "string", + "readOnly": true, + "description": "The profile version." + }, + "apiVersion": { + "type": "string", + "readOnly": true, + "description": "The API version." + } + } + }, + "AliasPathMetadata": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "enum": [ + "NotSpecified", + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" + ], + "x-ms-enum": { + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." + }, + "attributes": { + "type": "string", + "readOnly": true, + "enum": [ + "None", + "Modifiable" + ], + "x-ms-enum": { + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." + } + } + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." + }, + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPath" + }, + "x-ms-identifiers": [], + "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." + }, + "defaultMetadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" + } + }, + "description": "The alias type. " + }, + "ProviderExtendedLocation": { + "properties": { + "location": { + "type": "string", + "description": "The azure location." + }, + "type": { + "type": "string", + "description": "The extended location type." + }, + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." + } + }, + "description": "The provider extended location. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "x-ms-identifiers": [ + "location", + "type" + ], + "description": "The location mappings that are supported by this resource type." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "defaultApiVersion": { + "type": "string", + "readOnly": true, + "description": "The default API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + }, + "x-ms-identifiers": [ + "location" + ] + }, + "apiProfiles": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "x-ms-identifiers": [ + "apiVersion", + "profileVersion" + ], + "description": "The API profiles for the resource provider." + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "x-ms-identifiers": [ + "resourceType" + ], + "description": "The collection of provider resource types." + }, + "providerAuthorizationConsentState": { + "type": "string", + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Denotes the state of provisioning.", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Ready", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "readOnly": true, + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "templateLink": { + "readOnly": true, + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template." + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "Deployment parameters. " + }, + "parametersLink": { + "readOnly": true, + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. " + }, + "mode": { + "readOnly": true, + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "readOnly": true, + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "readOnly": true, + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified resource Id." + } + } + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", + "$ref": "#/definitions/StatusMessage" + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array", + "NoEffect" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + }, + { + "value": "NoEffect", + "description": "The property will not be set or updated." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "resourceId", + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify", + "Unsupported" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + }, + { + "value": "Unsupported", + "description": "The resource is not supported by What-If." + } + ] + } + }, + "unsupportedReason": { + "type": "string", + "description": "The explanation about why the resource is unsupported by What-If." + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "x-ms-identifiers": [ + "resourceId", + "changeType" + ], + "description": "List of resource changes predicted by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "StatusMessage": { + "type": "object", + "description": "Operation status message object.", + "properties": { + "status": { + "type": "string", + "description": "Status of the deployment operation." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error reported by the operation." + } + } + }, + "ExpressionEvaluationOptions": { + "properties": { + "scope": { + "type": "string", + "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", + "enum": [ + "NotSpecified", + "Outer", + "Inner" + ], + "x-ms-enum": { + "name": "ExpressionEvaluationOptionsScopeType", + "modelAsString": true + } + } + }, + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." + }, + "ZoneMapping": { + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Microsoft Azure subscription ID." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PostDeploymentWhatIfOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PostDeploymentWhatIfOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PostDeploymentWhatIfOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PostDeploymentWhatIfOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PostDeploymentWhatIfOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PostDeploymentWhatIfOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PostDeploymentWhatIfOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PostDeploymentWhatIfOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PostDeploymentWhatIfOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PostDeploymentWhatIfOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PostDeploymentWhatIfOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PostDeploymentWhatIfOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PostDeploymentWhatIfOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PostDeploymentWhatIfOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentAtScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentAtScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentAtScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentAtTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentAtTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentAtTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2022-09-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/deployments.json new file mode 100644 index 000000000000..a3e3e3cb0370 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/deployments.json @@ -0,0 +1,3919 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2023-07-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtTenantScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtManagementGroupScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + }, + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + }, + "Create a deployment that will deploy a template with a uri and queryString": { + "$ref": "./examples/PutDeploymentResourceGroup.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy. Use either the uri or id property, but not both." + }, + "id": { + "type": "string", + "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." + }, + "relativePath": { + "type": "string", + "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + }, + "queryString": { + "type": "string", + "description": "The query string (for example, a SAS token) to be used with the templateLink URI." + } + }, + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/DeploymentParameter" + }, + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + }, + "expressionEvaluationOptions": { + "$ref": "#/definitions/ExpressionEvaluationOptions", + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DeploymentParameter": { + "type": "object", + "properties": { + "value": { + "description": "Input value to the parameter ." + }, + "reference": { + "$ref": "#/definitions/KeyVaultParameterReference", + "description": "Azure Key Vault parameter reference." + } + }, + "description": "Deployment parameter for the template." + }, + "KeyVaultParameterReference": { + "type": "object", + "properties": { + "keyVault": { + "$ref": "#/definitions/KeyVaultReference", + "description": "Azure Key Vault reference." + }, + "secretName": { + "type": "string", + "description": "Azure Key Vault secret name." + }, + "secretVersion": { + "type": "string", + "description": "Azure Key Vault secret version." + } + }, + "required": [ + "keyVault", + "secretName" + ], + "description": "Azure Key Vault parameter reference." + }, + "KeyVaultReference": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Azure Key Vault resource id." + } + }, + "required": [ + "id" + ], + "description": "Azure Key Vault reference." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "ScopedDeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ApiProfile": { + "properties": { + "profileVersion": { + "type": "string", + "readOnly": true, + "description": "The profile version." + }, + "apiVersion": { + "type": "string", + "readOnly": true, + "description": "The API version." + } + } + }, + "AliasPathMetadata": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "enum": [ + "NotSpecified", + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" + ], + "x-ms-enum": { + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." + }, + "attributes": { + "type": "string", + "readOnly": true, + "enum": [ + "None", + "Modifiable" + ], + "x-ms-enum": { + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." + } + } + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." + }, + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPath" + }, + "x-ms-identifiers": [], + "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." + }, + "defaultMetadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" + } + }, + "description": "The alias type. " + }, + "ProviderExtendedLocation": { + "properties": { + "location": { + "type": "string", + "description": "The azure location." + }, + "type": { + "type": "string", + "description": "The extended location type." + }, + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." + } + }, + "description": "The provider extended location. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "x-ms-identifiers": [ + "location", + "type" + ], + "description": "The location mappings that are supported by this resource type." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "defaultApiVersion": { + "type": "string", + "readOnly": true, + "description": "The default API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + }, + "x-ms-identifiers": [ + "location" + ] + }, + "apiProfiles": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "x-ms-identifiers": [ + "apiVersion", + "profileVersion" + ], + "description": "The API profiles for the resource provider." + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "x-ms-identifiers": [ + "resourceType" + ], + "description": "The collection of provider resource types." + }, + "providerAuthorizationConsentState": { + "type": "string", + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Denotes the state of provisioning.", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Ready", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "readOnly": true, + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "templateLink": { + "readOnly": true, + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template." + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "Deployment parameters. " + }, + "parametersLink": { + "readOnly": true, + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. " + }, + "mode": { + "readOnly": true, + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "readOnly": true, + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "readOnly": true, + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified resource Id." + } + } + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", + "$ref": "#/definitions/StatusMessage" + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array", + "NoEffect" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + }, + { + "value": "NoEffect", + "description": "The property will not be set or updated." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "resourceId", + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify", + "Unsupported" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + }, + { + "value": "Unsupported", + "description": "The resource is not supported by What-If." + } + ] + } + }, + "unsupportedReason": { + "type": "string", + "description": "The explanation about why the resource is unsupported by What-If." + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "x-ms-identifiers": [ + "resourceId", + "changeType" + ], + "description": "List of resource changes predicted by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "StatusMessage": { + "type": "object", + "description": "Operation status message object.", + "properties": { + "status": { + "type": "string", + "description": "Status of the deployment operation." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error reported by the operation." + } + } + }, + "ExpressionEvaluationOptions": { + "properties": { + "scope": { + "type": "string", + "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", + "enum": [ + "NotSpecified", + "Outer", + "Inner" + ], + "x-ms-enum": { + "name": "ExpressionEvaluationOptionsScopeType", + "modelAsString": true + } + } + }, + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." + }, + "ZoneMapping": { + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Microsoft Azure subscription ID." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PostDeploymentWhatIfOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PostDeploymentWhatIfOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PostDeploymentWhatIfOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PostDeploymentWhatIfOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PostDeploymentWhatIfOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PostDeploymentWhatIfOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PostDeploymentWhatIfOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PostDeploymentWhatIfOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PostDeploymentWhatIfOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PostDeploymentWhatIfOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PostDeploymentWhatIfOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PostDeploymentWhatIfOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PostDeploymentWhatIfOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PostDeploymentWhatIfOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentAtScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentAtScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentAtScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentAtTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentAtTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentAtTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2023-07-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/deployments.json new file mode 100644 index 000000000000..290e1395f706 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/deployments.json @@ -0,0 +1,3919 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2024-03-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtTenantScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtManagementGroupScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + }, + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + }, + "Create a deployment that will deploy a template with a uri and queryString": { + "$ref": "./examples/PutDeploymentResourceGroup.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "Returns the validation result.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy. Use either the uri or id property, but not both." + }, + "id": { + "type": "string", + "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." + }, + "relativePath": { + "type": "string", + "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + }, + "queryString": { + "type": "string", + "description": "The query string (for example, a SAS token) to be used with the templateLink URI." + } + }, + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/DeploymentParameter" + }, + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + }, + "expressionEvaluationOptions": { + "$ref": "#/definitions/ExpressionEvaluationOptions", + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DeploymentParameter": { + "type": "object", + "properties": { + "value": { + "description": "Input value to the parameter ." + }, + "reference": { + "$ref": "#/definitions/KeyVaultParameterReference", + "description": "Azure Key Vault parameter reference." + } + }, + "description": "Deployment parameter for the template." + }, + "KeyVaultParameterReference": { + "type": "object", + "properties": { + "keyVault": { + "$ref": "#/definitions/KeyVaultReference", + "description": "Azure Key Vault reference." + }, + "secretName": { + "type": "string", + "description": "Azure Key Vault secret name." + }, + "secretVersion": { + "type": "string", + "description": "Azure Key Vault secret version." + } + }, + "required": [ + "keyVault", + "secretName" + ], + "description": "Azure Key Vault parameter reference." + }, + "KeyVaultReference": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Azure Key Vault resource id." + } + }, + "required": [ + "id" + ], + "description": "Azure Key Vault reference." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "ScopedDeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ApiProfile": { + "properties": { + "profileVersion": { + "type": "string", + "readOnly": true, + "description": "The profile version." + }, + "apiVersion": { + "type": "string", + "readOnly": true, + "description": "The API version." + } + } + }, + "AliasPathMetadata": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "enum": [ + "NotSpecified", + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" + ], + "x-ms-enum": { + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." + }, + "attributes": { + "type": "string", + "readOnly": true, + "enum": [ + "None", + "Modifiable" + ], + "x-ms-enum": { + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." + } + } + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." + }, + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPath" + }, + "x-ms-identifiers": [], + "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." + }, + "defaultMetadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" + } + }, + "description": "The alias type. " + }, + "ProviderExtendedLocation": { + "properties": { + "location": { + "type": "string", + "description": "The azure location." + }, + "type": { + "type": "string", + "description": "The extended location type." + }, + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." + } + }, + "description": "The provider extended location. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "x-ms-identifiers": [ + "location", + "type" + ], + "description": "The location mappings that are supported by this resource type." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "defaultApiVersion": { + "type": "string", + "readOnly": true, + "description": "The default API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + }, + "x-ms-identifiers": [ + "location" + ] + }, + "apiProfiles": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "x-ms-identifiers": [ + "apiVersion", + "profileVersion" + ], + "description": "The API profiles for the resource provider." + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "x-ms-identifiers": [ + "resourceType" + ], + "description": "The collection of provider resource types." + }, + "providerAuthorizationConsentState": { + "type": "string", + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Denotes the state of provisioning.", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Ready", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "readOnly": true, + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "templateLink": { + "readOnly": true, + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template." + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "Deployment parameters. " + }, + "parametersLink": { + "readOnly": true, + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. " + }, + "mode": { + "readOnly": true, + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "readOnly": true, + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "readOnly": true, + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + } + }, + "description": "Deployment properties with additional details." + }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified resource Id." + } + } + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", + "$ref": "#/definitions/StatusMessage" + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array", + "NoEffect" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + }, + { + "value": "NoEffect", + "description": "The property will not be set or updated." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "resourceId", + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify", + "Unsupported" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + }, + { + "value": "Unsupported", + "description": "The resource is not supported by What-If." + } + ] + } + }, + "unsupportedReason": { + "type": "string", + "description": "The explanation about why the resource is unsupported by What-If." + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "x-ms-identifiers": [ + "resourceId", + "changeType" + ], + "description": "List of resource changes predicted by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "StatusMessage": { + "type": "object", + "description": "Operation status message object.", + "properties": { + "status": { + "type": "string", + "description": "Status of the deployment operation." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error reported by the operation." + } + } + }, + "ExpressionEvaluationOptions": { + "properties": { + "scope": { + "type": "string", + "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", + "enum": [ + "NotSpecified", + "Outer", + "Inner" + ], + "x-ms-enum": { + "name": "ExpressionEvaluationOptionsScopeType", + "modelAsString": true + } + } + }, + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." + }, + "ZoneMapping": { + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Microsoft Azure subscription ID." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PostDeploymentWhatIfOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PostDeploymentWhatIfOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PostDeploymentWhatIfOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PostDeploymentWhatIfOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PostDeploymentWhatIfOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PostDeploymentWhatIfOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PostDeploymentWhatIfOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PostDeploymentWhatIfOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PostDeploymentWhatIfOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PostDeploymentWhatIfOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PostDeploymentWhatIfOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PostDeploymentWhatIfOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PostDeploymentWhatIfOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PostDeploymentWhatIfOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentAtScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentAtScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentAtScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentAtTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentAtTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentAtTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-03-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/deployments.json new file mode 100644 index 000000000000..0592db9d0940 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/deployments.json @@ -0,0 +1,4034 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2024-07-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at scope": { + "$ref": "./examples/PostDeploymentValidateOnScope.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at tenant scope": { + "$ref": "./examples/PostDeploymentValidateOnTenant.json" + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtTenantScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at management group scope": { + "$ref": "./examples/PostDeploymentValidateOnManagementGroup.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtManagementGroupScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at subscription scope": { + "$ref": "./examples/PostDeploymentValidateOnSubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + }, + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + }, + "Create a deployment that will deploy a template with a uri and queryString": { + "$ref": "./examples/PutDeploymentResourceGroup.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at resource group scope": { + "$ref": "./examples/PostDeploymentValidateOnResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy. Use either the uri or id property, but not both." + }, + "id": { + "type": "string", + "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." + }, + "relativePath": { + "type": "string", + "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + }, + "queryString": { + "type": "string", + "description": "The query string (for example, a SAS token) to be used with the templateLink URI." + } + }, + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/DeploymentParameter" + }, + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + }, + "expressionEvaluationOptions": { + "$ref": "#/definitions/ExpressionEvaluationOptions", + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DeploymentParameter": { + "type": "object", + "properties": { + "value": { + "description": "Input value to the parameter ." + }, + "reference": { + "$ref": "#/definitions/KeyVaultParameterReference", + "description": "Azure Key Vault parameter reference." + } + }, + "description": "Deployment parameter for the template." + }, + "KeyVaultParameterReference": { + "type": "object", + "properties": { + "keyVault": { + "$ref": "#/definitions/KeyVaultReference", + "description": "Azure Key Vault reference." + }, + "secretName": { + "type": "string", + "description": "Azure Key Vault secret name." + }, + "secretVersion": { + "type": "string", + "description": "Azure Key Vault secret version." + } + }, + "required": [ + "keyVault", + "secretName" + ], + "description": "Azure Key Vault parameter reference." + }, + "KeyVaultReference": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Azure Key Vault resource id." + } + }, + "required": [ + "id" + ], + "description": "Azure Key Vault reference." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "ScopedDeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ApiProfile": { + "properties": { + "profileVersion": { + "type": "string", + "readOnly": true, + "description": "The profile version." + }, + "apiVersion": { + "type": "string", + "readOnly": true, + "description": "The API version." + } + } + }, + "AliasPathMetadata": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "enum": [ + "NotSpecified", + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" + ], + "x-ms-enum": { + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." + }, + "attributes": { + "type": "string", + "readOnly": true, + "enum": [ + "None", + "Modifiable" + ], + "x-ms-enum": { + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." + } + } + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." + }, + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPath" + }, + "x-ms-identifiers": [], + "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." + }, + "defaultMetadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" + } + }, + "description": "The alias type. " + }, + "ProviderExtendedLocation": { + "properties": { + "location": { + "type": "string", + "description": "The azure location." + }, + "type": { + "type": "string", + "description": "The extended location type." + }, + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." + } + }, + "description": "The provider extended location. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "x-ms-identifiers": [ + "location", + "type" + ], + "description": "The location mappings that are supported by this resource type." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "defaultApiVersion": { + "type": "string", + "readOnly": true, + "description": "The default API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + }, + "x-ms-identifiers": [ + "location" + ] + }, + "apiProfiles": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "x-ms-identifiers": [ + "apiVersion", + "profileVersion" + ], + "description": "The API profiles for the resource provider." + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "x-ms-identifiers": [ + "resourceType" + ], + "description": "The collection of provider resource types." + }, + "providerAuthorizationConsentState": { + "type": "string", + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentDiagnosticsDefinition": { + "type": "object", + "required": [ + "level", + "code", + "message" + ], + "properties": { + "level": { + "type": "string", + "readOnly": true, + "description": "Denotes the additional response level.", + "enum": [ + "Warning", + "Info", + "Error" + ], + "x-ms-enum": { + "name": "Level", + "modelAsString": true + } + }, + "code": { + "readOnly": true, + "type": "string", + "description": "The error code." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The error target." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorAdditionalInfo" + }, + "x-ms-identifiers": [], + "description": "The error additional info." + } + } + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Denotes the state of provisioning.", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Ready", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "readOnly": true, + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "templateLink": { + "readOnly": true, + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template." + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "Deployment parameters. " + }, + "parametersLink": { + "readOnly": true, + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. " + }, + "mode": { + "readOnly": true, + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "readOnly": true, + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "readOnly": true, + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + }, + "diagnostics": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/DeploymentDiagnosticsDefinition" + }, + "description": "Contains diagnostic information collected during validation process." + } + }, + "description": "Deployment properties with additional details." + }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified resource Id." + } + } + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", + "$ref": "#/definitions/StatusMessage" + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array", + "NoEffect" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + }, + { + "value": "NoEffect", + "description": "The property will not be set or updated." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "resourceId", + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify", + "Unsupported" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + }, + { + "value": "Unsupported", + "description": "The resource is not supported by What-If." + } + ] + } + }, + "unsupportedReason": { + "type": "string", + "description": "The explanation about why the resource is unsupported by What-If." + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "x-ms-identifiers": [ + "resourceId", + "changeType" + ], + "description": "List of resource changes predicted by What-If operation." + }, + "potentialChanges": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "x-ms-identifiers": [ + "resourceId", + "changeType" + ], + "description": "List of resource changes predicted by What-If operation." + }, + "diagnostics": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/DeploymentDiagnosticsDefinition" + }, + "description": "List of resource diagnostics detected by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "StatusMessage": { + "type": "object", + "description": "Operation status message object.", + "properties": { + "status": { + "type": "string", + "description": "Status of the deployment operation." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error reported by the operation." + } + } + }, + "ExpressionEvaluationOptions": { + "properties": { + "scope": { + "type": "string", + "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", + "enum": [ + "NotSpecified", + "Outer", + "Inner" + ], + "x-ms-enum": { + "name": "ExpressionEvaluationOptionsScopeType", + "modelAsString": true + } + } + }, + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." + }, + "ZoneMapping": { + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Microsoft Azure subscription ID." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentValidateOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentValidateOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentValidateOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentValidateOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentValidateOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentValidateOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentValidateOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentValidateOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentValidateOnScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentValidateOnScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentValidateOnScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentValidateOnScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentValidateOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentValidateOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentValidateOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentValidateOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentValidateOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentValidateOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentValidateOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentValidateOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentWhatIfOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentWhatIfOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentWhatIfOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentWhatIfOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentWhatIfOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentWhatIfOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentWhatIfOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentWhatIfOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentWhatIfOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentWhatIfOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentWhatIfOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentWhatIfOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PostDeploymentWhatIfOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PostDeploymentWhatIfOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentAtScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentAtScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentAtScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentAtTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentAtTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentAtTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-07-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/deployments.json new file mode 100644 index 000000000000..831542752df2 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/deployments.json @@ -0,0 +1,4072 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2024-11-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at scope": { + "$ref": "./examples/PostDeploymentValidateOnScope.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at tenant scope": { + "$ref": "./examples/PostDeploymentValidateOnTenant.json" + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtTenantScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at management group scope": { + "$ref": "./examples/PostDeploymentValidateOnManagementGroup.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtManagementGroupScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at subscription scope": { + "$ref": "./examples/PostDeploymentValidateOnSubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + }, + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + }, + "Create a deployment that will deploy a template with a uri and queryString": { + "$ref": "./examples/PutDeploymentResourceGroup.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at resource group scope": { + "$ref": "./examples/PostDeploymentValidateOnResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy. Use either the uri or id property, but not both." + }, + "id": { + "type": "string", + "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." + }, + "relativePath": { + "type": "string", + "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + }, + "queryString": { + "type": "string", + "description": "The query string (for example, a SAS token) to be used with the templateLink URI." + } + }, + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/DeploymentParameter" + }, + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + }, + "expressionEvaluationOptions": { + "$ref": "#/definitions/ExpressionEvaluationOptions", + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." + }, + "validationLevel": { + "$ref": "#/definitions/ValidationLevel", + "description": "The validation level of the deployment" + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DeploymentParameter": { + "type": "object", + "properties": { + "value": { + "description": "Input value to the parameter ." + }, + "reference": { + "$ref": "#/definitions/KeyVaultParameterReference", + "description": "Azure Key Vault parameter reference." + } + }, + "description": "Deployment parameter for the template." + }, + "KeyVaultParameterReference": { + "type": "object", + "properties": { + "keyVault": { + "$ref": "#/definitions/KeyVaultReference", + "description": "Azure Key Vault reference." + }, + "secretName": { + "type": "string", + "description": "Azure Key Vault secret name." + }, + "secretVersion": { + "type": "string", + "description": "Azure Key Vault secret version." + } + }, + "required": [ + "keyVault", + "secretName" + ], + "description": "Azure Key Vault parameter reference." + }, + "KeyVaultReference": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Azure Key Vault resource id." + } + }, + "required": [ + "id" + ], + "description": "Azure Key Vault reference." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "ScopedDeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ApiProfile": { + "properties": { + "profileVersion": { + "type": "string", + "readOnly": true, + "description": "The profile version." + }, + "apiVersion": { + "type": "string", + "readOnly": true, + "description": "The API version." + } + } + }, + "AliasPathMetadata": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "enum": [ + "NotSpecified", + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" + ], + "x-ms-enum": { + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." + }, + "attributes": { + "type": "string", + "readOnly": true, + "enum": [ + "None", + "Modifiable" + ], + "x-ms-enum": { + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." + } + } + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." + }, + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPath" + }, + "x-ms-identifiers": [], + "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." + }, + "defaultMetadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" + } + }, + "description": "The alias type. " + }, + "ProviderExtendedLocation": { + "properties": { + "location": { + "type": "string", + "description": "The azure location." + }, + "type": { + "type": "string", + "description": "The extended location type." + }, + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." + } + }, + "description": "The provider extended location. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "x-ms-identifiers": [ + "location", + "type" + ], + "description": "The location mappings that are supported by this resource type." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "defaultApiVersion": { + "type": "string", + "readOnly": true, + "description": "The default API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + }, + "x-ms-identifiers": [ + "location" + ] + }, + "apiProfiles": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "x-ms-identifiers": [ + "apiVersion", + "profileVersion" + ], + "description": "The API profiles for the resource provider." + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "x-ms-identifiers": [ + "resourceType" + ], + "description": "The collection of provider resource types." + }, + "providerAuthorizationConsentState": { + "type": "string", + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentDiagnosticsDefinition": { + "type": "object", + "required": [ + "level", + "code", + "message" + ], + "properties": { + "level": { + "type": "string", + "readOnly": true, + "description": "Denotes the additional response level.", + "enum": [ + "Warning", + "Info", + "Error" + ], + "x-ms-enum": { + "name": "Level", + "modelAsString": true + } + }, + "code": { + "readOnly": true, + "type": "string", + "description": "The error code." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The error target." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorAdditionalInfo" + }, + "x-ms-identifiers": [], + "description": "The error additional info." + } + } + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Denotes the state of provisioning.", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Ready", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "readOnly": true, + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "templateLink": { + "readOnly": true, + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template." + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "Deployment parameters. " + }, + "parametersLink": { + "readOnly": true, + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. " + }, + "mode": { + "readOnly": true, + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "readOnly": true, + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "readOnly": true, + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + }, + "diagnostics": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/DeploymentDiagnosticsDefinition" + }, + "description": "Contains diagnostic information collected during validation process." + }, + "validationLevel": { + "$ref": "#/definitions/ValidationLevel", + "description": "The validation level of the deployment" + } + }, + "description": "Deployment properties with additional details." + }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified resource Id." + } + } + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", + "$ref": "#/definitions/StatusMessage" + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array", + "NoEffect" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + }, + { + "value": "NoEffect", + "description": "The property will not be set or updated." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "deploymentId": { + "type": "string", + "description": "The resource id of the Deployment responsible for this change." + }, + "symbolicName": { + "type": "string", + "description": "The symbolic name of the resource responsible for this change." + }, + "identifiers": { + "type": "object", + "description": "A subset of properties that uniquely identify a Bicep extensible resource because it lacks a resource id like an Azure resource has." + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify", + "Unsupported" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + }, + { + "value": "Unsupported", + "description": "The resource is not supported by What-If." + } + ] + } + }, + "unsupportedReason": { + "type": "string", + "description": "The explanation about why the resource is unsupported by What-If." + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "description": "List of resource changes predicted by What-If operation." + }, + "potentialChanges": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "description": "List of resource changes predicted by What-If operation." + }, + "diagnostics": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/DeploymentDiagnosticsDefinition" + }, + "description": "List of resource diagnostics detected by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "StatusMessage": { + "type": "object", + "description": "Operation status message object.", + "properties": { + "status": { + "type": "string", + "description": "Status of the deployment operation." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error reported by the operation." + } + } + }, + "ExpressionEvaluationOptions": { + "properties": { + "scope": { + "type": "string", + "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", + "enum": [ + "NotSpecified", + "Outer", + "Inner" + ], + "x-ms-enum": { + "name": "ExpressionEvaluationOptionsScopeType", + "modelAsString": true + } + } + }, + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." + }, + "ZoneMapping": { + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ValidationLevel": { + "type": "string", + "description": "The level of validation performed on the deployment.", + "enum": [ + "Template", + "Provider", + "ProviderNoRbac" + ], + "x-ms-enum": { + "name": "ValidationLevel", + "modelAsString": true, + "values": [ + { + "description": "Static analysis of the template is performed.", + "value": "Template" + }, + { + "description": "Static analysis of the template is performed and resource declarations are sent to resource providers for semantic validation. Validates that the caller has RBAC write permissions on each resource.", + "value": "Provider" + }, + { + "description": "Static analysis of the template is performed and resource declarations are sent to resource providers for semantic validation. Skips validating that the caller has RBAC write permissions on each resource.", + "value": "ProviderNoRbac" + } + ] + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Microsoft Azure subscription ID." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentValidateOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentValidateOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentValidateOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentValidateOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentValidateOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentValidateOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentValidateOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentValidateOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentValidateOnScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentValidateOnScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentValidateOnScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentValidateOnScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentValidateOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentValidateOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentValidateOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentValidateOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentValidateOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentValidateOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentValidateOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentValidateOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentWhatIfOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentWhatIfOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentWhatIfOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentWhatIfOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentWhatIfOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentWhatIfOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentWhatIfOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentWhatIfOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentWhatIfOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentWhatIfOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentWhatIfOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentWhatIfOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PostDeploymentWhatIfOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PostDeploymentWhatIfOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentAtScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentAtScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentAtScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentAtTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentAtTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentAtTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2024-11-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/deployments.json new file mode 100644 index 000000000000..b12a653c1da6 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/deployments.json @@ -0,0 +1,4223 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2025-03-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at scope": { + "$ref": "./examples/PostDeploymentValidateOnScope.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at tenant scope": { + "$ref": "./examples/PostDeploymentValidateOnTenant.json" + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtTenantScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at management group scope": { + "$ref": "./examples/PostDeploymentValidateOnManagementGroup.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtManagementGroupScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at subscription scope": { + "$ref": "./examples/PostDeploymentValidateOnSubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + }, + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + }, + "Create a deployment that will deploy a template with a uri and queryString": { + "$ref": "./examples/PutDeploymentResourceGroup.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at resource group scope": { + "$ref": "./examples/PostDeploymentValidateOnResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy. Use either the uri or id property, but not both." + }, + "id": { + "type": "string", + "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." + }, + "relativePath": { + "type": "string", + "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + }, + "queryString": { + "type": "string", + "description": "The query string (for example, a SAS token) to be used with the templateLink URI." + } + }, + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/DeploymentParameter" + }, + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "extensionConfigs": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/DeploymentExtensionConfig" + }, + "description": "The configurations to use for deployment extensions. The keys of this object are deployment extension aliases as defined in the deployment template." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + }, + "expressionEvaluationOptions": { + "$ref": "#/definitions/ExpressionEvaluationOptions", + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." + }, + "validationLevel": { + "$ref": "#/definitions/ValidationLevel", + "description": "The validation level of the deployment" + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DeploymentParameter": { + "type": "object", + "properties": { + "value": { + "description": "Input value to the parameter ." + }, + "reference": { + "$ref": "#/definitions/KeyVaultParameterReference", + "description": "Azure Key Vault parameter reference." + } + }, + "description": "Deployment parameter for the template." + }, + "KeyVaultParameterReference": { + "type": "object", + "properties": { + "keyVault": { + "$ref": "#/definitions/KeyVaultReference", + "description": "Azure Key Vault reference." + }, + "secretName": { + "type": "string", + "description": "Azure Key Vault secret name." + }, + "secretVersion": { + "type": "string", + "description": "Azure Key Vault secret version." + } + }, + "required": [ + "keyVault", + "secretName" + ], + "description": "Azure Key Vault parameter reference." + }, + "KeyVaultReference": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Azure Key Vault resource id." + } + }, + "required": [ + "id" + ], + "description": "Azure Key Vault reference." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "ScopedDeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ApiProfile": { + "properties": { + "profileVersion": { + "type": "string", + "readOnly": true, + "description": "The profile version." + }, + "apiVersion": { + "type": "string", + "readOnly": true, + "description": "The API version." + } + } + }, + "AliasPathMetadata": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "enum": [ + "NotSpecified", + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" + ], + "x-ms-enum": { + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." + }, + "attributes": { + "type": "string", + "readOnly": true, + "enum": [ + "None", + "Modifiable" + ], + "x-ms-enum": { + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." + } + } + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." + }, + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPath" + }, + "x-ms-identifiers": [], + "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." + }, + "defaultMetadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" + } + }, + "description": "The alias type. " + }, + "ProviderExtendedLocation": { + "properties": { + "location": { + "type": "string", + "description": "The azure location." + }, + "type": { + "type": "string", + "description": "The extended location type." + }, + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." + } + }, + "description": "The provider extended location. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "x-ms-identifiers": [ + "location", + "type" + ], + "description": "The location mappings that are supported by this resource type." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "defaultApiVersion": { + "type": "string", + "readOnly": true, + "description": "The default API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + }, + "x-ms-identifiers": [ + "location" + ] + }, + "apiProfiles": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "x-ms-identifiers": [ + "apiVersion", + "profileVersion" + ], + "description": "The API profiles for the resource provider." + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "x-ms-identifiers": [ + "resourceType" + ], + "description": "The collection of provider resource types." + }, + "providerAuthorizationConsentState": { + "type": "string", + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentDiagnosticsDefinition": { + "type": "object", + "required": [ + "level", + "code", + "message" + ], + "properties": { + "level": { + "type": "string", + "readOnly": true, + "description": "Denotes the additional response level.", + "enum": [ + "Warning", + "Info", + "Error" + ], + "x-ms-enum": { + "name": "Level", + "modelAsString": true + } + }, + "code": { + "readOnly": true, + "type": "string", + "description": "The error code." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The error target." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorAdditionalInfo" + }, + "x-ms-identifiers": [], + "description": "The error additional info." + } + } + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Denotes the state of provisioning.", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Ready", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "readOnly": true, + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "templateLink": { + "readOnly": true, + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template." + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "Deployment parameters. " + }, + "parametersLink": { + "readOnly": true, + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. " + }, + "extensions": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtensionDefinition" + }, + "description": "The extensions used in this deployment." + }, + "mode": { + "readOnly": true, + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "readOnly": true, + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "readOnly": true, + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + }, + "diagnostics": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/DeploymentDiagnosticsDefinition" + }, + "description": "Contains diagnostic information collected during validation process." + }, + "validationLevel": { + "$ref": "#/definitions/ValidationLevel", + "description": "The validation level of the deployment" + } + }, + "description": "Deployment properties with additional details." + }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified Azure resource ID." + }, + "extension": { + "readOnly": true, + "$ref": "#/definitions/DeploymentExtensionDefinition", + "description": "The key of the extension the resource was deployed with." + }, + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "identifiers": { + "readOnly": true, + "type": "object", + "description": "The extensible resource identifiers." + }, + "apiVersion": { + "readOnly": true, + "type": "string", + "description": "The API version the resource was deployed with." + } + } + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The Azure resource ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + }, + "extension": { + "$ref": "#/definitions/DeploymentExtensionDefinition", + "description": "The extension the resource was deployed with." + }, + "identifiers": { + "type": "object", + "description": "The extensible resource identifiers." + }, + "apiVersion": { + "type": "string", + "description": "The API version the resource was deployed with." + }, + "symbolicName": { + "type": "string", + "description": "The symbolic name of the resource as defined in the deployment template." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", + "$ref": "#/definitions/StatusMessage" + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array", + "NoEffect" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + }, + { + "value": "NoEffect", + "description": "The property will not be set or updated." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "deploymentId": { + "type": "string", + "description": "The resource id of the Deployment responsible for this change." + }, + "symbolicName": { + "type": "string", + "description": "The symbolic name of the resource responsible for this change." + }, + "identifiers": { + "type": "object", + "description": "A subset of properties that uniquely identify a Bicep extensible resource because it lacks a resource id like an Azure resource has." + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify", + "Unsupported" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + }, + { + "value": "Unsupported", + "description": "The resource is not supported by What-If." + } + ] + } + }, + "unsupportedReason": { + "type": "string", + "description": "The explanation about why the resource is unsupported by What-If." + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "description": "List of resource changes predicted by What-If operation." + }, + "potentialChanges": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "description": "List of resource changes predicted by What-If operation." + }, + "diagnostics": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/DeploymentDiagnosticsDefinition" + }, + "description": "List of resource diagnostics detected by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "StatusMessage": { + "type": "object", + "description": "Operation status message object.", + "properties": { + "status": { + "type": "string", + "description": "Status of the deployment operation." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error reported by the operation." + } + } + }, + "ExpressionEvaluationOptions": { + "properties": { + "scope": { + "type": "string", + "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", + "enum": [ + "NotSpecified", + "Outer", + "Inner" + ], + "x-ms-enum": { + "name": "ExpressionEvaluationOptionsScopeType", + "modelAsString": true + } + } + }, + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." + }, + "ZoneMapping": { + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ValidationLevel": { + "type": "string", + "description": "The level of validation performed on the deployment.", + "enum": [ + "Template", + "Provider", + "ProviderNoRbac" + ], + "x-ms-enum": { + "name": "ValidationLevel", + "modelAsString": true, + "values": [ + { + "description": "Static analysis of the template is performed.", + "value": "Template" + }, + { + "description": "Static analysis of the template is performed and resource declarations are sent to resource providers for semantic validation. Validates that the caller has RBAC write permissions on each resource.", + "value": "Provider" + }, + { + "description": "Static analysis of the template is performed and resource declarations are sent to resource providers for semantic validation. Skips validating that the caller has RBAC write permissions on each resource.", + "value": "ProviderNoRbac" + } + ] + } + }, + "DeploymentExtensionDefinition": { + "type": "object", + "properties": { + "alias": { + "readOnly": true, + "type": "string", + "description": "The alias of the extension as defined in the deployment template." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The extension name." + }, + "version": { + "readOnly": true, + "type": "string", + "description": "The extension version." + }, + "configId": { + "readOnly": true, + "type": "string", + "description": "The extension configuration ID. It uniquely identifies a deployment control plane within an extension." + }, + "config": { + "readOnly": true, + "$ref": "#/definitions/DeploymentExtensionConfig", + "description": "The extension configuration." + } + } + }, + "DeploymentExtensionConfig": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/DeploymentExtensionConfigItem" + }, + "description": "An extension configuration. Keys of the object are defined by an extension's configuration schema." + }, + "DeploymentExtensionConfigItem": { + "type": "object", + "properties": { + "type": { + "readOnly": true, + "$ref": "#/definitions/ExtensionConfigPropertyType", + "description": "The value type of the extension config property." + }, + "value": { + "description": "The value of the extension config property." + }, + "keyVaultReference": { + "$ref": "#/definitions/KeyVaultParameterReference", + "description": "The Azure Key Vault reference used to retrieve the secret value of the extension config property." + } + } + }, + "ExtensionConfigPropertyType": { + "type": "string", + "enum": [ + "String", + "Int", + "Bool", + "Array", + "Object", + "SecureString", + "SecureObject" + ], + "x-ms-enum": { + "name": "ExtensionConfigPropertyType", + "modelAsString": true, + "values": [ + { + "description": "Property type representing a string value.", + "value": "String" + }, + { + "description": "Property type representing an integer value.", + "value": "Int" + }, + { + "description": "Property type representing a boolean value.", + "value": "Bool" + }, + { + "description": "Property type representing an array value.", + "value": "Array" + }, + { + "description": "Property type representing an object value.", + "value": "Object" + }, + { + "description": "Property type representing a secure string value.", + "value": "SecureString" + }, + { + "description": "Property type representing a secure object value.", + "value": "SecureObject" + } + ] + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Microsoft Azure subscription ID." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentValidateOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentValidateOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentValidateOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentValidateOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentValidateOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentValidateOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentValidateOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentValidateOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentValidateOnScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentValidateOnScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentValidateOnScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentValidateOnScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentValidateOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentValidateOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentValidateOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentValidateOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentValidateOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentValidateOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentValidateOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentValidateOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentWhatIfOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentWhatIfOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentWhatIfOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentWhatIfOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentWhatIfOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentWhatIfOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentWhatIfOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentWhatIfOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentWhatIfOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentWhatIfOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentWhatIfOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentWhatIfOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PostDeploymentWhatIfOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PostDeploymentWhatIfOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentAtScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentAtScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentAtScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentAtTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentAtTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentAtTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-03-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/deployments.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/deployments.json new file mode 100644 index 000000000000..0a898f832836 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/deployments.json @@ -0,0 +1,4321 @@ +{ + "swagger": "2.0", + "info": { + "title": "DeploymentsClient", + "version": "2025-04-01", + "description": "Provides operations for working with deployments." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtScope", + "summary": "Deploys resources at a given scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at a given scope.": { + "$ref": "./examples/PutDeploymentAtScope.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at scope": { + "$ref": "./examples/PostDeploymentValidateOnScope.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtScope", + "description": "Get all the deployments at the given scope.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtTenantScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtTenantScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtTenantScope", + "summary": "Deploys resources at tenant scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at tenant scope.": { + "$ref": "./examples/PutDeploymentAtTenant.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtTenantScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtTenantScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at tenant scope": { + "$ref": "./examples/PostDeploymentValidateOnTenant.json" + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtTenantScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtTenantScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtTenantScope", + "description": "Get all the deployments at the tenant scope.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtManagementGroupScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtManagementGroupScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", + "summary": "Deploys resources at management group scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create deployment at management group scope.": { + "$ref": "./examples/PutDeploymentAtManagementGroup.json" + } + } + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtManagementGroupScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtManagementGroupScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at management group scope": { + "$ref": "./examples/PostDeploymentValidateOnManagementGroup.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtManagementGroupScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedDeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at management group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtManagementGroupScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtManagementGroupScope", + "description": "Get all the deployments for a management group.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_DeleteAtSubscriptionScope", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistenceAtSubscriptionScope", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", + "summary": "Deploys resources at subscription scope.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_GetAtSubscriptionScope", + "description": "Gets a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CancelAtSubscriptionScope", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at subscription scope": { + "$ref": "./examples/PostDeploymentValidateOnSubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIfAtSubscriptionScope", + "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to What If." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at subscription scope": { + "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplateAtSubscriptionScope", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListAtSubscriptionScope", + "description": "Get all the deployments for a subscription.", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "delete": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Delete", + "summary": "Deletes a deployment from the deployment history.", + "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted - Returns this status until the asynchronous operation has completed." + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "head": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CheckExistence", + "description": "Checks whether the deployment exists.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CreateOrUpdate", + "summary": "Deploys resources to a resource group.", + "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Additional parameters supplied to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "201": { + "description": "Created - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a deployment that will redeploy the last successful deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + }, + "Create a deployment that will redeploy another deployment on failure": { + "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + }, + "Create a deployment that will deploy a templateSpec with the given resourceId": { + "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + }, + "Create a deployment that will deploy a template with a uri and queryString": { + "$ref": "./examples/PutDeploymentResourceGroup.json" + }, + "Create deployment using external inputs": { + "$ref": "./examples/PutDeploymentWithExternalInputs.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Get", + "description": "Gets a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment, including provisioning status.", + "schema": { + "$ref": "#/definitions/DeploymentExtended" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Cancel", + "summary": "Cancels a currently running template deployment.", + "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, + "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Deployment" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, + "400": { + "description": "The template deployment validation detected failures.", + "schema": { + "$ref": "#/definitions/DeploymentValidateResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Validates a template at resource group scope": { + "$ref": "./examples/PostDeploymentValidateOnResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_WhatIf", + "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DeploymentWhatIf" + }, + "description": "Parameters to validate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns What-If operation status", + "schema": { + "$ref": "#/definitions/WhatIfOperationResult" + } + }, + "202": { + "description": "Accepted - Returns URL in Location header to query for long-running operation status.", + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + }, + "Retry-After": { + "type": "string", + "description": "Number of seconds to wait before polling for status." + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Predict template changes at resource group scope": { + "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ExportTemplate", + "description": "Exports the template used for specified deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the template.", + "schema": { + "$ref": "#/definitions/DeploymentExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "get": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_ListByResourceGroup", + "description": "Get all the deployments for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group with the deployments to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to get. If null is passed, returns all deployments." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of deployments.", + "schema": { + "$ref": "#/definitions/DeploymentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtTenantScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtTenantScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtManagementGroupScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtManagementGroupScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_GetAtSubscriptionScope", + "description": "Gets a deployments operation.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_ListAtSubscriptionScope", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_Get", + "description": "Gets a deployments operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the operation to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the deployment operation.", + "schema": { + "$ref": "#/definitions/DeploymentOperation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { + "get": { + "tags": [ + "DeploymentOperations" + ], + "operationId": "DeploymentOperations_List", + "description": "Gets all deployments operations for a deployment.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/DeploymentNameParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Return an array of deployment operations.", + "schema": { + "$ref": "#/definitions/DeploymentOperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Resources/calculateTemplateHash": { + "post": { + "tags": [ + "Deployments" + ], + "operationId": "Deployments_CalculateTemplateHash", + "description": "Calculate the hash of the given template.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "template", + "in": "body", + "required": true, + "schema": { + "type": "object" + }, + "description": "The template provided to calculate hash." + } + ], + "x-ms-examples": { + "Calculate template hash": { + "$ref": "./examples/CalculateTemplateHash.json" + } + }, + "responses": { + "200": { + "description": "OK - Returns the hash.", + "schema": { + "$ref": "#/definitions/TemplateHashResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "DeploymentExtendedFilter": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state." + } + }, + "description": "Deployment filter." + }, + "TemplateLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the template to deploy. Use either the uri or id property, but not both." + }, + "id": { + "type": "string", + "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." + }, + "relativePath": { + "type": "string", + "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + }, + "queryString": { + "type": "string", + "description": "The query string (for example, a SAS token) to be used with the templateLink URI." + } + }, + "description": "Entity representing the reference to the template." + }, + "ParametersLink": { + "properties": { + "uri": { + "type": "string", + "description": "The URI of the parameters file." + }, + "contentVersion": { + "type": "string", + "description": "If included, must match the ContentVersion in the template." + } + }, + "required": [ + "uri" + ], + "description": "Entity representing the reference to the deployment parameters." + }, + "DeploymentProperties": { + "properties": { + "template": { + "type": "object", + "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." + }, + "templateLink": { + "$ref": "#/definitions/TemplateLink", + "description": "The URI of the template. Use either the templateLink property or the template property, but not both." + }, + "parameters": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/DeploymentParameter" + }, + "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." + }, + "externalInputs": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/DeploymentExternalInput" + }, + "x-ms-mutability": [ + "create", + "update" + ], + "description": "External input values, used by external tooling for parameter evaluation." + }, + "externalInputDefinitions": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/DeploymentExternalInputDefinition" + }, + "x-ms-mutability": [ + "create", + "update" + ], + "description": "External input definitions, used by external tooling to define expected external input values." + }, + "parametersLink": { + "$ref": "#/definitions/ParametersLink", + "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." + }, + "extensionConfigs": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/DeploymentExtensionConfig" + }, + "description": "The configurations to use for deployment extensions. The keys of this object are deployment extension aliases as defined in the deployment template." + }, + "mode": { + "type": "string", + "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "$ref": "#/definitions/OnErrorDeployment", + "description": "The deployment on error behavior." + }, + "expressionEvaluationOptions": { + "$ref": "#/definitions/ExpressionEvaluationOptions", + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." + }, + "validationLevel": { + "$ref": "#/definitions/ValidationLevel", + "description": "The validation level of the deployment" + } + }, + "required": [ + "mode" + ], + "description": "Deployment properties." + }, + "DeploymentParameter": { + "type": "object", + "properties": { + "value": { + "description": "Input value to the parameter ." + }, + "reference": { + "$ref": "#/definitions/KeyVaultParameterReference", + "description": "Azure Key Vault parameter reference." + }, + "expression": { + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ], + "description": "Input expression to the parameter." + } + }, + "description": "Deployment parameter for the template." + }, + "DeploymentExternalInput": { + "type": "object", + "properties": { + "value": { + "description": "External input value." + } + }, + "required": [ + "value" + ], + "description": "Deployment external input for parameterization." + }, + "DeploymentExternalInputDefinition": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "description": "The kind of external input." + }, + "config": { + "description": "Configuration for the external input." + } + }, + "required": [ + "kind" + ], + "description": "Deployment external input definition for parameterization." + }, + "KeyVaultParameterReference": { + "type": "object", + "properties": { + "keyVault": { + "$ref": "#/definitions/KeyVaultReference", + "description": "Azure Key Vault reference." + }, + "secretName": { + "type": "string", + "description": "Azure Key Vault secret name." + }, + "secretVersion": { + "type": "string", + "description": "Azure Key Vault secret version." + } + }, + "required": [ + "keyVault", + "secretName" + ], + "description": "Azure Key Vault parameter reference." + }, + "KeyVaultReference": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Azure Key Vault resource id." + } + }, + "required": [ + "id" + ], + "description": "Azure Key Vault reference." + }, + "DebugSetting": { + "properties": { + "detailLevel": { + "type": "string", + "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + } + }, + "description": "The debug setting." + }, + "Deployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + }, + "identity": { + "$ref": "#/definitions/DeploymentIdentity", + "description": "The Managed Identity configuration for a deployment." + } + }, + "required": [ + "properties" + ], + "description": "Deployment operation parameters." + }, + "ScopedDeployment": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentProperties", + "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment operation parameters." + }, + "DeploymentExportResult": { + "properties": { + "template": { + "type": "object", + "description": "The template content." + } + }, + "description": "The deployment export result. " + }, + "DeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "ScopedDeploymentWhatIf": { + "properties": { + "location": { + "type": "string", + "description": "The location to store the deployment data." + }, + "properties": { + "$ref": "#/definitions/DeploymentWhatIfProperties", + "description": "The deployment properties." + } + }, + "required": [ + "location", + "properties" + ], + "description": "Deployment What-if operation parameters." + }, + "DeploymentWhatIfProperties": { + "properties": { + "whatIfSettings": { + "$ref": "#/definitions/DeploymentWhatIfSettings", + "description": "Optional What-If operation settings." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DeploymentProperties" + } + ], + "description": "Deployment What-if properties." + }, + "DeploymentWhatIfSettings": { + "properties": { + "resultFormat": { + "type": "string", + "description": "The format of the What-If results", + "enum": [ + "ResourceIdOnly", + "FullResourcePayloads" + ], + "x-ms-enum": { + "name": "WhatIfResultFormat", + "modelAsString": false + } + } + }, + "description": "Deployment What-If operation settings." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ApiProfile": { + "properties": { + "profileVersion": { + "type": "string", + "readOnly": true, + "description": "The profile version." + }, + "apiVersion": { + "type": "string", + "readOnly": true, + "description": "The API version." + } + } + }, + "AliasPathMetadata": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "enum": [ + "NotSpecified", + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" + ], + "x-ms-enum": { + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." + }, + "attributes": { + "type": "string", + "readOnly": true, + "enum": [ + "None", + "Modifiable" + ], + "x-ms-enum": { + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." + } + } + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." + }, + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." + }, + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPath" + }, + "x-ms-identifiers": [], + "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." + }, + "defaultMetadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" + } + }, + "description": "The alias type. " + }, + "ProviderExtendedLocation": { + "properties": { + "location": { + "type": "string", + "description": "The azure location." + }, + "type": { + "type": "string", + "description": "The extended location type." + }, + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." + } + }, + "description": "The provider extended location. " + }, + "ProviderResourceType": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "x-ms-identifiers": [ + "location", + "type" + ], + "description": "The location mappings that are supported by this resource type." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "defaultApiVersion": { + "type": "string", + "readOnly": true, + "description": "The default API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + }, + "x-ms-identifiers": [ + "location" + ] + }, + "apiProfiles": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "x-ms-identifiers": [ + "apiVersion", + "profileVersion" + ], + "description": "The API profiles for the resource provider." + }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, + "properties": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." + } + }, + "description": "Resource type managed by the resource provider." + }, + "Provider": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The provider ID." + }, + "namespace": { + "type": "string", + "description": "The namespace of the resource provider." + }, + "registrationState": { + "readOnly": true, + "type": "string", + "description": "The registration state of the resource provider." + }, + "registrationPolicy": { + "readOnly": true, + "type": "string", + "description": "The registration policy of the resource provider." + }, + "resourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ProviderResourceType" + }, + "x-ms-identifiers": [ + "resourceType" + ], + "description": "The collection of provider resource types." + }, + "providerAuthorizationConsentState": { + "type": "string", + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } + } + }, + "description": "Resource provider information." + }, + "BasicDependency": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "Dependency": { + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "#/definitions/BasicDependency" + }, + "description": "The list of dependencies." + }, + "id": { + "type": "string", + "description": "The ID of the dependency." + }, + "resourceType": { + "type": "string", + "description": "The dependency resource type." + }, + "resourceName": { + "type": "string", + "description": "The dependency resource name." + } + }, + "description": "Deployment dependency information." + }, + "DeploymentDiagnosticsDefinition": { + "type": "object", + "required": [ + "level", + "code", + "message" + ], + "properties": { + "level": { + "type": "string", + "readOnly": true, + "description": "Denotes the additional response level.", + "enum": [ + "Warning", + "Info", + "Error" + ], + "x-ms-enum": { + "name": "Level", + "modelAsString": true + } + }, + "code": { + "readOnly": true, + "type": "string", + "description": "The error code." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The error target." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "../../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorAdditionalInfo" + }, + "x-ms-identifiers": [], + "description": "The error additional info." + } + } + }, + "DeploymentIdentity": { + "description": "The Managed Identity configuration for a deployment.", + "type": "object", + "properties": { + "type": { + "description": "The identity type.", + "enum": [ + "None", + "UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "DeploymentIdentityType", + "modelAsString": true + } + }, + "userAssignedIdentities": { + "type": "object", + "description": "The set of user assigned identities associated with the resource.", + "additionalProperties": { + "$ref": "../../../../../../common-types/resource-management/v6/managedidentity.json#/definitions/UserAssignedIdentity", + "x-nullable": true + } + } + }, + "required": [ + "type" + ] + }, + "DeploymentPropertiesExtended": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Denotes the state of provisioning.", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Ready", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "Updating" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "correlationId": { + "readOnly": true, + "type": "string", + "description": "The correlation ID of the deployment." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp of the template deployment." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the template deployment." + }, + "outputs": { + "readOnly": true, + "type": "object", + "description": "Key/value pairs that represent deployment output." + }, + "providers": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Provider" + }, + "description": "The list of resource providers needed for the deployment." + }, + "dependencies": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Dependency" + }, + "description": "The list of deployment dependencies." + }, + "templateLink": { + "readOnly": true, + "$ref": "#/definitions/TemplateLink", + "description": "The URI referencing the template." + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "Deployment parameters. " + }, + "parametersLink": { + "readOnly": true, + "$ref": "#/definitions/ParametersLink", + "description": "The URI referencing the parameters. " + }, + "extensions": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtensionDefinition" + }, + "description": "The extensions used in this deployment." + }, + "mode": { + "readOnly": true, + "type": "string", + "description": "The deployment mode. Possible values are Incremental and Complete.", + "enum": [ + "Incremental", + "Complete" + ], + "x-ms-enum": { + "name": "DeploymentMode", + "modelAsString": false + } + }, + "debugSetting": { + "readOnly": true, + "$ref": "#/definitions/DebugSetting", + "description": "The debug setting of the deployment." + }, + "onErrorDeployment": { + "readOnly": true, + "$ref": "#/definitions/OnErrorDeploymentExtended", + "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." + }, + "diagnostics": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/DeploymentDiagnosticsDefinition" + }, + "description": "Contains diagnostic information collected during validation process." + }, + "validationLevel": { + "$ref": "#/definitions/ValidationLevel", + "description": "The validation level of the deployment" + } + }, + "description": "Deployment properties with additional details." + }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified Azure resource ID." + }, + "extension": { + "readOnly": true, + "$ref": "#/definitions/DeploymentExtensionDefinition", + "description": "The extension the resource was deployed with." + }, + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "identifiers": { + "readOnly": true, + "type": "object", + "description": "The extensible resource identifiers." + }, + "apiVersion": { + "readOnly": true, + "type": "string", + "description": "The API version the resource was deployed with." + } + } + }, + "OnErrorDeployment": { + "properties": { + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior." + }, + "OnErrorDeploymentExtended": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning for the on error deployment." + }, + "type": { + "type": "string", + "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", + "enum": [ + "LastSuccessful", + "SpecificDeployment" + ], + "x-ms-enum": { + "name": "OnErrorDeploymentType", + "modelAsString": false + } + }, + "deploymentName": { + "type": "string", + "description": "The deployment to be used on error case." + } + }, + "description": "Deployment on error behavior with additional details." + }, + "DeploymentValidateResult": { + "properties": { + "error": { + "readOnly": true, + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment validation error." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "The template deployment properties." + } + }, + "description": "Information from validate template deployment response." + }, + "DeploymentExtended": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the deployment." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the deployment." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the deployment." + }, + "location": { + "type": "string", + "description": "the location of the deployment." + }, + "properties": { + "$ref": "#/definitions/DeploymentPropertiesExtended", + "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" + } + }, + "x-ms-azure-resource": true, + "description": "Deployment information." + }, + "DeploymentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentExtended" + }, + "description": "An array of deployments." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployments." + }, + "TargetResource": { + "properties": { + "id": { + "type": "string", + "description": "The Azure resource ID of the resource." + }, + "resourceName": { + "type": "string", + "description": "The name of the resource." + }, + "resourceType": { + "type": "string", + "description": "The type of the resource." + }, + "extension": { + "$ref": "#/definitions/DeploymentExtensionDefinition", + "description": "The extension the resource was deployed with." + }, + "identifiers": { + "type": "object", + "description": "The extensible resource identifiers." + }, + "apiVersion": { + "type": "string", + "description": "The API version the resource was deployed with." + }, + "symbolicName": { + "type": "string", + "description": "The symbolic name of the resource as defined in the deployment template." + } + }, + "description": "Target resource." + }, + "HttpMessage": { + "properties": { + "content": { + "type": "object", + "description": "HTTP message content." + } + }, + "description": "HTTP message." + }, + "DeploymentOperationProperties": { + "properties": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the provisioning." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time of the operation." + }, + "duration": { + "readOnly": true, + "type": "string", + "description": "The duration of the operation." + }, + "serviceRequestId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation service request id." + }, + "statusCode": { + "readOnly": true, + "type": "string", + "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." + }, + "statusMessage": { + "readOnly": true, + "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", + "$ref": "#/definitions/StatusMessage" + }, + "targetResource": { + "readOnly": true, + "$ref": "#/definitions/TargetResource", + "description": "The target resource." + }, + "request": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP request message." + }, + "response": { + "readOnly": true, + "$ref": "#/definitions/HttpMessage", + "description": "The HTTP response message." + } + }, + "description": "Deployment operation properties." + }, + "DeploymentOperation": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full deployment operation ID." + }, + "operationId": { + "readOnly": true, + "type": "string", + "description": "Deployment operation ID." + }, + "properties": { + "$ref": "#/definitions/DeploymentOperationProperties", + "description": "Deployment properties." + } + }, + "description": "Deployment operation information." + }, + "DeploymentOperationsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeploymentOperation" + }, + "description": "An array of deployment operations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "List of deployment operations." + }, + "ResourceProviderOperationDisplayProperties": { + "properties": { + "publisher": { + "type": "string", + "description": "Operation description." + }, + "provider": { + "type": "string", + "description": "Operation provider." + }, + "resource": { + "type": "string", + "description": "Operation resource." + }, + "operation": { + "type": "string", + "description": "Resource provider operation." + }, + "description": { + "type": "string", + "description": "Operation description." + } + }, + "description": "Resource provider operation's display properties." + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID" + } + }, + "x-ms-azure-resource": true, + "description": "Sub-resource." + }, + "TemplateHashResult": { + "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", + "properties": { + "minifiedTemplate": { + "type": "string", + "description": "The minified template string." + }, + "templateHash": { + "type": "string", + "description": "The template hash." + } + } + }, + "WhatIfPropertyChange": { + "required": [ + "path", + "propertyChangeType" + ], + "properties": { + "path": { + "type": "string", + "description": "The path of the property." + }, + "propertyChangeType": { + "type": "string", + "description": "The type of property change.", + "enum": [ + "Create", + "Delete", + "Modify", + "Array", + "NoEffect" + ], + "x-ms-enum": { + "name": "PropertyChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." + }, + { + "value": "Modify", + "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." + }, + { + "value": "Array", + "description": "The property is an array and contains nested changes." + }, + { + "value": "NoEffect", + "description": "The property will not be set or updated." + } + ] + } + }, + "before": { + "type": "object", + "description": "The value of the property before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The value of the property after the deployment is executed." + }, + "children": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "Nested property changes." + } + }, + "description": "The predicted change to the resource property." + }, + "WhatIfChange": { + "description": "Information about a single resource change predicted by What-If operation.", + "required": [ + "changeType" + ], + "properties": { + "resourceId": { + "type": "string", + "description": "Resource ID" + }, + "deploymentId": { + "type": "string", + "description": "The resource id of the Deployment responsible for this change." + }, + "symbolicName": { + "type": "string", + "description": "The symbolic name of the resource responsible for this change." + }, + "identifiers": { + "type": "object", + "description": "A subset of properties that uniquely identify a Bicep extensible resource because it lacks a resource id like an Azure resource has." + }, + "extension": { + "$ref": "#/definitions/DeploymentExtensionDefinition", + "description": "The extension the resource was deployed with." + }, + "changeType": { + "type": "string", + "description": "Type of change that will be made to the resource when the deployment is executed.", + "enum": [ + "Create", + "Delete", + "Ignore", + "Deploy", + "NoChange", + "Modify", + "Unsupported" + ], + "x-ms-enum": { + "name": "ChangeType", + "modelAsString": false, + "values": [ + { + "value": "Create", + "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." + }, + { + "value": "Delete", + "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." + }, + { + "value": "Ignore", + "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." + }, + { + "value": "Deploy", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." + }, + { + "value": "NoChange", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." + }, + { + "value": "Modify", + "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." + }, + { + "value": "Unsupported", + "description": "The resource is not supported by What-If." + } + ] + } + }, + "unsupportedReason": { + "type": "string", + "description": "The explanation about why the resource is unsupported by What-If." + }, + "before": { + "type": "object", + "description": "The snapshot of the resource before the deployment is executed." + }, + "after": { + "type": "object", + "description": "The predicted snapshot of the resource after the deployment is executed." + }, + "delta": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfPropertyChange" + }, + "x-ms-identifiers": [ + "path" + ], + "description": "The predicted changes to resource properties." + } + } + }, + "WhatIfOperationProperties": { + "description": "Deployment operation properties.", + "properties": { + "changes": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "description": "List of resource changes predicted by What-If operation." + }, + "potentialChanges": { + "type": "array", + "items": { + "$ref": "#/definitions/WhatIfChange" + }, + "description": "List of resource changes predicted by What-If operation." + }, + "diagnostics": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/DeploymentDiagnosticsDefinition" + }, + "description": "List of resource diagnostics detected by What-If operation." + } + } + }, + "WhatIfOperationResult": { + "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", + "properties": { + "status": { + "type": "string", + "description": "Status of the What-If operation." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WhatIfOperationProperties", + "description": "What-If operation properties." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "Error when What-If operation fails." + } + } + }, + "StatusMessage": { + "type": "object", + "description": "Operation status message object.", + "properties": { + "status": { + "type": "string", + "description": "Status of the deployment operation." + }, + "error": { + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The error reported by the operation." + } + } + }, + "ExpressionEvaluationOptions": { + "properties": { + "scope": { + "type": "string", + "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", + "enum": [ + "NotSpecified", + "Outer", + "Inner" + ], + "x-ms-enum": { + "name": "ExpressionEvaluationOptionsScopeType", + "modelAsString": true + } + } + }, + "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." + }, + "ZoneMapping": { + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The location of the zone mapping." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ValidationLevel": { + "type": "string", + "description": "The level of validation performed on the deployment.", + "enum": [ + "Template", + "Provider", + "ProviderNoRbac" + ], + "x-ms-enum": { + "name": "ValidationLevel", + "modelAsString": true, + "values": [ + { + "description": "Static analysis of the template is performed.", + "value": "Template" + }, + { + "description": "Static analysis of the template is performed and resource declarations are sent to resource providers for semantic validation. Validates that the caller has RBAC write permissions on each resource.", + "value": "Provider" + }, + { + "description": "Static analysis of the template is performed and resource declarations are sent to resource providers for semantic validation. Skips validating that the caller has RBAC write permissions on each resource.", + "value": "ProviderNoRbac" + } + ] + } + }, + "DeploymentExtensionDefinition": { + "type": "object", + "properties": { + "alias": { + "readOnly": true, + "type": "string", + "description": "The alias of the extension as defined in the deployment template." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The extension name." + }, + "version": { + "readOnly": true, + "type": "string", + "description": "The extension version." + }, + "configId": { + "readOnly": true, + "type": "string", + "description": "The extension configuration ID. It uniquely identifies a deployment control plane within an extension." + }, + "config": { + "readOnly": true, + "$ref": "#/definitions/DeploymentExtensionConfig", + "description": "The extension configuration." + } + } + }, + "DeploymentExtensionConfig": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/DeploymentExtensionConfigItem" + }, + "description": "An extension configuration. Keys of the object are defined by an extension's configuration schema." + }, + "DeploymentExtensionConfigItem": { + "type": "object", + "properties": { + "type": { + "readOnly": true, + "$ref": "#/definitions/ExtensionConfigPropertyType", + "description": "The value type of the extension config property." + }, + "value": { + "description": "The value of the extension config property." + }, + "keyVaultReference": { + "$ref": "#/definitions/KeyVaultParameterReference", + "description": "The Azure Key Vault reference used to retrieve the secret value of the extension config property." + } + } + }, + "ExtensionConfigPropertyType": { + "type": "string", + "enum": [ + "String", + "Int", + "Bool", + "Array", + "Object", + "SecureString", + "SecureObject" + ], + "x-ms-enum": { + "name": "ExtensionConfigPropertyType", + "modelAsString": true, + "values": [ + { + "description": "Property type representing a string value.", + "value": "String" + }, + { + "description": "Property type representing an integer value.", + "value": "Int" + }, + { + "description": "Property type representing a boolean value.", + "value": "Bool" + }, + { + "description": "Property type representing an array value.", + "value": "Array" + }, + { + "description": "Property type representing an object value.", + "value": "Object" + }, + { + "description": "Property type representing a secure string value.", + "value": "SecureString" + }, + { + "description": "Property type representing a secure object value.", + "value": "SecureObject" + } + ] + } + } + }, + "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource scope.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "The management group ID.", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 90 + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Microsoft Azure subscription ID." + }, + "DeploymentNameParameter": { + "name": "deploymentName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "x-ms-parameter-location": "method", + "minLength": 1, + "maxLength": 64, + "description": "The name of the deployment." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for this operation." + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/CalculateTemplateHash.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/CalculateTemplateHash.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/CalculateTemplateHash.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/CalculateTemplateHash.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentValidateOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentValidateOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentValidateOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentValidateOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentValidateOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentValidateOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentValidateOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentValidateOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentValidateOnScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentValidateOnScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentValidateOnScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentValidateOnScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentValidateOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentValidateOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentValidateOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentValidateOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentValidateOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentValidateOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentValidateOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentValidateOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentWhatIfOnManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentWhatIfOnManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentWhatIfOnManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentWhatIfOnManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentWhatIfOnResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentWhatIfOnResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentWhatIfOnResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentWhatIfOnResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentWhatIfOnSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentWhatIfOnSubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentWhatIfOnSubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentWhatIfOnSubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentWhatIfOnTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentWhatIfOnTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PostDeploymentWhatIfOnTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PostDeploymentWhatIfOnTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentAtManagementGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentAtManagementGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentAtManagementGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentAtScope.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentAtScope.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentAtScope.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentAtTenant.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentAtTenant.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentAtTenant.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentResourceGroupTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentSubscriptionTemplateSpecsWithId.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentWithExternalInputs.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentWithExternalInputs.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentWithExternalInputs.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentWithExternalInputs.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json rename to specification/resources/resource-manager/Microsoft.Resources/deployments/stable/2025-04-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/resources.json index 10e6c4c4dfcf..c64a9c000eb8 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/resources.json @@ -33,335 +33,6 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "description": "Begin deleting deployment.To determine whether the operation has finished processing the request, call GetLongRunningOperationStatus.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to be deleted." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "" - }, - "204": { - "description": "" - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "" - }, - "404": { - "description": "" - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "description": "Create a named template deployment using a template.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Get a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "description": "Cancel a currently running template deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "description": "Validate a deployment template.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Deployment to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_List", - "description": "Get a list of deployments.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to filter by. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "Query parameters. If null is passed returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { "post": { "tags": [ @@ -623,13 +294,13 @@ } ], "responses": { - "201": { + "200": { "description": "", "schema": { "$ref": "#/definitions/ResourceGroup" } }, - "200": { + "201": { "description": "", "schema": { "$ref": "#/definitions/ResourceGroup" @@ -662,10 +333,10 @@ } ], "responses": { - "202": { + "200": { "description": "" }, - "200": { + "202": { "description": "" } }, @@ -1015,10 +686,10 @@ "200": { "description": "" }, - "204": { + "202": { "description": "" }, - "202": { + "204": { "description": "" } } @@ -1090,13 +761,13 @@ } ], "responses": { - "201": { + "200": { "description": "", "schema": { "$ref": "#/definitions/GenericResource" } }, - "200": { + "201": { "description": "", "schema": { "$ref": "#/definitions/GenericResource" @@ -1401,122 +1072,20 @@ "200": { "description": "" }, - "204": { - "description": "" - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "description": "Get a list of subscription resource tags.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/TagsListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_Get", - "description": "Get a list of deployments operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "Operation Id." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_List", - "description": "Gets a list of deployments operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "Query parameters." - }, + "204": { + "description": "" + } + } + } + }, + "/subscriptions/{subscriptionId}/tagNames": { + "get": { + "tags": [ + "Tags" + ], + "operationId": "Tags_List", + "description": "Get a list of subscription resource tags.", + "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, @@ -1528,7 +1097,7 @@ "200": { "description": "", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/TagsListResult" } } }, @@ -2080,48 +1649,6 @@ "nextLinkName": "nextLink" } } - }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." - } - ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the hash.", - "schema": { - "$ref": "#/definitions/TemplateHashResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } } }, "definitions": { @@ -2202,15 +1729,6 @@ }, "description": "Policy definition." }, - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "Gets or sets the provisioning state." - } - }, - "description": "Deployment filter." - }, "GenericResourceFilter": { "properties": { "resourceType": { @@ -2241,129 +1759,6 @@ }, "description": "Resource group filter." }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "URI referencing the template." - }, - "contentVersion": { - "type": "string", - "description": "If included it must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "URI referencing the template." - }, - "contentVersion": { - "type": "string", - "description": "If included it must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "Gets or sets the template content. Use only one of Template or TemplateLink." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "Gets or sets the URI referencing the template. Use only one of Template or TemplateLink." - }, - "parameters": { - "type": "object", - "description": "Deployment parameters. Use only one of Parameters or ParametersLink." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "Gets or sets the URI referencing the parameters. Use only one of Parameters or ParametersLink." - }, - "mode": { - "type": "string", - "description": "Gets or sets the deployment mode.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - } - }, - "description": "Deployment properties." - }, - "Deployment": { - "properties": { - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "Gets or sets the deployment properties." - } - }, - "description": "Deployment operation parameters." - }, - "CloudError": { - "x-ms-external": true, - "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" - } - }, - "description": "An error response for a resource management request." - }, - "ResourceManagementError": { - "properties": { - "code": { - "type": "string", - "description": "Gets or sets the error code returned from the server." - }, - "message": { - "type": "string", - "description": "Gets or sets the error message returned from the server." - }, - "target": { - "type": "string", - "description": "Gets or sets the target of the error." - } - }, - "required": [ - "code", - "message" - ] - }, - "ResourceManagementErrorWithDetails": { - "properties": { - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/ResourceManagementError" - }, - "description": "Gets or sets validation error." - } - }, - "allOf": [ - { - "$ref": "#/definitions/ResourceManagementError" - } - ], - "required": [ - "code", - "message" - ] - }, "ProviderResourceType": { "properties": { "resourceType": { @@ -2418,167 +1813,6 @@ }, "description": "Resource provider information." }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "Gets or sets the ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "Gets or sets the dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "Gets or sets the dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "Gets the list of dependencies." - }, - "id": { - "type": "string", - "description": "Gets or sets the ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "Gets or sets the dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "Gets or sets the dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "type": "string", - "description": "Gets or sets the state of the provisioning." - }, - "correlationId": { - "type": "string", - "description": "Gets or sets the correlation ID of the deployment." - }, - "timestamp": { - "type": "string", - "format": "date-time", - "description": "Gets or sets the timestamp of the template deployment." - }, - "outputs": { - "type": "object", - "description": "Gets or sets key/value pairs that represent deployment output." - }, - "providers": { - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "Gets the list of resource providers needed for the deployment." - }, - "dependencies": { - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "Gets the list of deployment dependencies." - }, - "template": { - "type": "object", - "description": "Gets or sets the template content. Use only one of Template or TemplateLink." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "Gets or sets the URI referencing the template. Use only one of Template or TemplateLink." - }, - "parameters": { - "type": "object", - "description": "Deployment parameters. Use only one of Parameters or ParametersLink." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "Gets or sets the URI referencing the parameters. Use only one of Parameters or ParametersLink." - }, - "mode": { - "type": "string", - "description": "Gets or sets the deployment mode.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "$ref": "#/definitions/ResourceManagementErrorWithDetails", - "description": "Gets or sets validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Gets or sets the template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Gets or sets the ID of the deployment." - }, - "name": { - "type": "string", - "description": "Gets or sets the name of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Gets or sets deployment properties." - } - }, - "required": [ - "name" - ], - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentExtended" - }, - "description": "Gets or sets the list of deployments." - }, - "nextLink": { - "type": "string", - "description": "Gets or sets the URL to get the next set of results." - } - }, - "description": "List of deployments." - }, "ProviderListResult": { "properties": { "value": { @@ -2833,81 +2067,6 @@ ], "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "Gets or sets the ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "Gets or sets the name of the resource." - }, - "resourceType": { - "type": "string", - "description": "Gets or sets the type of the resource." - } - }, - "description": "Target resource." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningState": { - "type": "string", - "description": "Gets or sets the state of the provisioning." - }, - "timestamp": { - "type": "string", - "format": "date-time", - "description": "Gets or sets the date and time of the operation." - }, - "statusCode": { - "type": "string", - "description": "Gets or sets operation status code." - }, - "statusMessage": { - "description": "Gets or sets operation status message." - }, - "targetResource": { - "$ref": "#/definitions/TargetResource", - "description": "Gets or sets the target resource." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "type": "string", - "description": "Gets or sets full deployment operation id." - }, - "operationId": { - "type": "string", - "description": "Gets or sets deployment operation id." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Gets or sets deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "Gets or sets the list of deployments." - }, - "nextLink": { - "type": "string", - "description": "Gets or sets the URL to get the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -3004,19 +2163,6 @@ } }, "x-ms-azure-resource": true - }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json index fff0a303dfe6..8f53c92bfabc 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json @@ -33,377 +33,6 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "description": "Delete deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to be deleted." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "" - }, - "204": { - "description": "" - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "" - }, - "404": { - "description": "" - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "description": "Create a named template deployment using a template.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Get a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "description": "Cancel a currently running template deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "description": "Validate a deployment template.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Deployment to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports a deployment template.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_List", - "description": "Get a list of deployments.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to filter by. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "Query parameters. If null is passed returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { "post": { "tags": [ @@ -679,13 +308,13 @@ } ], "responses": { - "201": { + "200": { "description": "", "schema": { "$ref": "#/definitions/ResourceGroup" } }, - "200": { + "201": { "description": "", "schema": { "$ref": "#/definitions/ResourceGroup" @@ -718,10 +347,10 @@ } ], "responses": { - "202": { + "200": { "description": "" }, - "200": { + "202": { "description": "" } }, @@ -1117,10 +746,10 @@ "200": { "description": "" }, - "204": { + "202": { "description": "" }, - "202": { + "204": { "description": "" } } @@ -1193,13 +822,13 @@ } ], "responses": { - "201": { + "200": { "description": "", "schema": { "$ref": "#/definitions/GenericResource" } }, - "200": { + "201": { "description": "", "schema": { "$ref": "#/definitions/GenericResource" @@ -1501,194 +1130,41 @@ "description": "" }, "204": { - "description": "" - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "description": "Get a list of subscription resource tags.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/TagsListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_Get", - "description": "Get a list of deployments operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "Operation Id." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_List", - "description": "Gets a list of deployments operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "Query parameters." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "description": "" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "description": "Get a list of subscription resource tags.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", - "schema": { - "$ref": "#/definitions/TemplateHashResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", + "description": "", "schema": { - "$ref": "#/definitions/CloudError" + "$ref": "#/definitions/TagsListResult" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } } }, "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, "GenericResourceFilter": { "properties": { "resourceType": { @@ -1719,113 +1195,6 @@ }, "description": "Resource group filter." }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "URI referencing the template." - }, - "contentVersion": { - "type": "string", - "description": "If included it must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "URI referencing the template." - }, - "contentVersion": { - "type": "string", - "description": "If included it must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. It can be a JObject or a well formed JSON string. Use only one of Template or TemplateLink." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The template URI. Use only one of Template or TemplateLink." - }, - "parameters": { - "type": "object", - "description": "Deployment parameters. It can be a JObject or a well formed JSON string. Use only one of Parameters or ParametersLink." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The parameters URI. Use only one of Parameters or ParametersLink." - }, - "mode": { - "type": "string", - "description": "The deployment mode.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "x-ms-client-flatten": true, - "type": "string", - "description": "The debug detail level." - } - } - }, - "Deployment": { - "properties": { - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - } - }, - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - } - }, - "CloudError": { - "x-ms-external": true, - "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" - } - }, - "description": "An error response for a resource management request." - }, "ResourceManagementErrorWithDetails": { "properties": { "code": { @@ -1944,171 +1313,6 @@ }, "description": "Resource provider information." }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The state of the provisioning." - }, - "correlationId": { - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "outputs": { - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "template": { - "type": "object", - "description": "The template content. Use only one of Template or TemplateLink." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template. Use only one of Template or TemplateLink." - }, - "parameters": { - "type": "object", - "description": "Deployment parameters. Use only one of Parameters or ParametersLink." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." - }, - "mode": { - "type": "string", - "description": "The deployment mode.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "$ref": "#/definitions/ResourceManagementErrorWithDetails", - "description": "Validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "type": "string", - "description": "The name of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - } - }, - "required": [ - "name" - ], - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentExtended" - }, - "description": "The list of deployments." - }, - "nextLink": { - "type": "string", - "description": "The URL to get the next set of results." - } - }, - "description": "List of deployments." - }, "ProviderListResult": { "properties": { "value": { @@ -2451,101 +1655,6 @@ ], "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - } - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "serviceRequestId": { - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "type": "string", - "description": "Operation status code." - }, - "statusMessage": { - "description": "Operation status message." - }, - "targetResource": { - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "type": "string", - "description": "Full deployment operation id." - }, - "operationId": { - "type": "string", - "description": "Deployment operation id." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "The list of deployments." - }, - "nextLink": { - "type": "string", - "description": "The URL to get the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -2622,19 +1731,6 @@ "description": "The error." } } - }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json index 9d0694238c1b..f57d185c4a93 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json @@ -33,377 +33,6 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "description": "Delete deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to be deleted." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "" - }, - "204": { - "description": "" - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "" - }, - "404": { - "description": "" - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "description": "Create a named template deployment using a template.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Get a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "description": "Cancel a currently running template deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "description": "Validate a deployment template.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Deployment to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports a deployment template.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_List", - "description": "Get a list of deployments.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to filter by. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "Query parameters. If null is passed returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { "post": { "tags": [ @@ -679,13 +308,13 @@ } ], "responses": { - "201": { + "200": { "description": "", "schema": { "$ref": "#/definitions/ResourceGroup" } }, - "200": { + "201": { "description": "", "schema": { "$ref": "#/definitions/ResourceGroup" @@ -718,10 +347,10 @@ } ], "responses": { - "202": { + "200": { "description": "" }, - "200": { + "202": { "description": "" } }, @@ -1117,10 +746,10 @@ "200": { "description": "" }, - "204": { + "202": { "description": "" }, - "202": { + "204": { "description": "" } } @@ -1193,13 +822,13 @@ } ], "responses": { - "201": { + "200": { "description": "", "schema": { "$ref": "#/definitions/GenericResource" } }, - "200": { + "201": { "description": "", "schema": { "$ref": "#/definitions/GenericResource" @@ -1499,195 +1128,42 @@ "200": { "description": "" }, - "204": { - "description": "" - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "description": "Get a list of subscription resource tags.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/TagsListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_Get", - "description": "Get a list of deployments operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "Operation Id." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_List", - "description": "Gets a list of deployments operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "Query parameters." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "204": { + "description": "" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "description": "Get a list of subscription resource tags.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", - "schema": { - "$ref": "#/definitions/TemplateHashResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", + "description": "", "schema": { - "$ref": "#/definitions/CloudError" + "$ref": "#/definitions/TagsListResult" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } } }, "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, "GenericResourceFilter": { "properties": { "resourceType": { @@ -1718,114 +1194,6 @@ }, "description": "Resource group filter." }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "URI referencing the template." - }, - "contentVersion": { - "type": "string", - "description": "If included it must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "URI referencing the template." - }, - "contentVersion": { - "type": "string", - "description": "If included it must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. It can be a JObject or a well formed JSON string. Use only one of Template or TemplateLink." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The template URI. Use only one of Template or TemplateLink." - }, - "parameters": { - "type": "object", - "description": "Deployment parameters. It can be a JObject or a well formed JSON string. Use only one of Parameters or ParametersLink." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The parameters URI. Use only one of Parameters or ParametersLink." - }, - "mode": { - "type": "string", - "description": "The deployment mode.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "x-ms-client-flatten": true, - "type": "string", - "description": "The debug detail level." - } - } - }, - "Deployment": { - "properties": { - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - } - }, - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "CloudError": { - "x-ms-external": true, - "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" - } - }, - "description": "An error response for a resource management request." - }, "ResourceManagementErrorWithDetails": { "properties": { "code": { @@ -1953,171 +1321,6 @@ }, "description": "Resource provider information." }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The state of the provisioning." - }, - "correlationId": { - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "outputs": { - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "template": { - "type": "object", - "description": "The template content. Use only one of Template or TemplateLink." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template. Use only one of Template or TemplateLink." - }, - "parameters": { - "type": "object", - "description": "Deployment parameters. Use only one of Parameters or ParametersLink." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." - }, - "mode": { - "type": "string", - "description": "The deployment mode.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "$ref": "#/definitions/ResourceManagementErrorWithDetails", - "description": "Validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "type": "string", - "description": "The name of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - } - }, - "required": [ - "name" - ], - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentExtended" - }, - "description": "The list of deployments." - }, - "nextLink": { - "type": "string", - "description": "The URL to get the next set of results." - } - }, - "description": "List of deployments." - }, "ProviderListResult": { "properties": { "value": { @@ -2461,101 +1664,6 @@ ], "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - } - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "serviceRequestId": { - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "type": "string", - "description": "Operation status code." - }, - "statusMessage": { - "description": "Operation status message." - }, - "targetResource": { - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "type": "string", - "description": "Full deployment operation id." - }, - "operationId": { - "type": "string", - "description": "Deployment operation id." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "The list of deployments." - }, - "nextLink": { - "type": "string", - "description": "The URL to get the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -2633,19 +1741,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, "ZoneMapping": { "properties": { "location": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json index c2990a44dde6..5e3c52b79fef 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json @@ -34,401 +34,6 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to delete.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to check.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to cancel.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment from which to get the template.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_List", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { "post": { "tags": [ @@ -704,14 +309,14 @@ } ], "responses": { - "201": { - "description": "Created - Returns information about the new resource group.", + "200": { + "description": "OK - Returns information about the new resource group.", "schema": { "$ref": "#/definitions/ResourceGroup" } }, - "200": { - "description": "OK - Returns information about the new resource group.", + "201": { + "description": "Created - Returns information about the new resource group.", "schema": { "$ref": "#/definitions/ResourceGroup" } @@ -744,11 +349,11 @@ } ], "responses": { - "202": { - "description": "Accepted" - }, "200": { "description": "OK" + }, + "202": { + "description": "Accepted" } }, "x-ms-long-running-operation": true @@ -1147,11 +752,11 @@ "200": { "description": "OK" }, - "204": { - "description": "No Content" - }, "202": { "description": "Accepted" + }, + "204": { + "description": "No Content" } }, "x-ms-long-running-operation": true @@ -1225,14 +830,14 @@ } ], "responses": { - "201": { - "description": "Created - Returns information about the resource.", + "200": { + "description": "OK - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } }, - "200": { - "description": "OK - Returns information about the resource.", + "201": { + "description": "Created - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } @@ -1455,11 +1060,11 @@ "200": { "description": "OK" }, - "204": { - "description": "No Content" - }, "202": { "description": "Accepted" + }, + "204": { + "description": "No Content" } }, "x-ms-long-running-operation": true @@ -1498,14 +1103,14 @@ } ], "responses": { - "201": { - "description": "Created - Returns information about the resource.", + "200": { + "description": "OK - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } }, - "200": { - "description": "OK - Returns information about the resource.", + "201": { + "description": "Created - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } @@ -1762,181 +1367,22 @@ { "$ref": "#/parameters/SubscriptionIdParameter" } - ], - "responses": { - "200": { - "description": "OK - Returns an array of tag names and values.", - "schema": { - "$ref": "#/definitions/TagsListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment with the operation to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." - } - ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, + ], "responses": { "200": { - "description": "OK - Returns the hash.", - "schema": { - "$ref": "#/definitions/TemplateHashResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/CloudError" + "$ref": "#/definitions/TagsListResult" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } } }, "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, "GenericResourceFilter": { "properties": { "resourceType": { @@ -1967,116 +1413,6 @@ }, "description": "Resource group filter." }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - } - }, - "Deployment": { - "properties": { - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "CloudError": { - "x-ms-external": true, - "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" - } - }, - "description": "An error response for a resource management request." - }, "ResourceManagementErrorWithDetails": { "properties": { "code": { @@ -2207,175 +1543,6 @@ }, "description": "Resource provider information." }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "outputs": { - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "template": { - "type": "object", - "description": "The template content. Use only one of Template or TemplateLink." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template. Use only one of Template or TemplateLink." - }, - "parameters": { - "type": "object", - "description": "Deployment parameters. Use only one of Parameters or ParametersLink." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." - }, - "mode": { - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "$ref": "#/definitions/ResourceManagementErrorWithDetails", - "description": "Validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "type": "string", - "description": "The name of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - } - }, - "required": [ - "name" - ], - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentExtended" - }, - "description": "An array of deployments." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployments." - }, "ProviderListResult": { "properties": { "value": { @@ -2719,112 +1886,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - } - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code." - }, - "statusMessage": { - "readOnly": true, - "description": "Operation status message." - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -2902,19 +1963,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, "ZoneMapping": { "properties": { "location": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json index c25288a823ac..53a000837009 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json @@ -34,401 +34,6 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to delete.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to check.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to cancel.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment from which to get the template.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { "post": { "tags": [ @@ -704,14 +309,14 @@ } ], "responses": { - "201": { - "description": "Created - Returns information about the new resource group.", + "200": { + "description": "OK - Returns information about the new resource group.", "schema": { "$ref": "#/definitions/ResourceGroup" } }, - "200": { - "description": "OK - Returns information about the new resource group.", + "201": { + "description": "Created - Returns information about the new resource group.", "schema": { "$ref": "#/definitions/ResourceGroup" } @@ -744,11 +349,11 @@ } ], "responses": { - "202": { - "description": "Accepted" - }, "200": { "description": "OK" + }, + "202": { + "description": "Accepted" } }, "x-ms-long-running-operation": true @@ -1196,11 +801,11 @@ "200": { "description": "OK" }, - "204": { - "description": "No Content" - }, "202": { "description": "Accepted" + }, + "204": { + "description": "No Content" } }, "x-ms-long-running-operation": true @@ -1274,14 +879,14 @@ } ], "responses": { - "201": { - "description": "Created - Returns information about the resource.", + "200": { + "description": "OK - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } }, - "200": { - "description": "OK - Returns information about the resource.", + "201": { + "description": "Created - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } @@ -1504,11 +1109,11 @@ "200": { "description": "OK" }, - "204": { - "description": "No Content" - }, "202": { "description": "Accepted" + }, + "204": { + "description": "No Content" } }, "x-ms-long-running-operation": true @@ -1547,14 +1152,14 @@ } ], "responses": { - "201": { - "description": "Created - Returns information about the resource.", + "200": { + "description": "OK - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } }, - "200": { - "description": "OK - Returns information about the resource.", + "201": { + "description": "Created - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } @@ -1811,181 +1416,22 @@ { "$ref": "#/parameters/SubscriptionIdParameter" } - ], - "responses": { - "200": { - "description": "OK - Returns an array of tag names and values.", - "schema": { - "$ref": "#/definitions/TagsListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment with the operation to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." - } - ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, + ], "responses": { "200": { - "description": "OK - Returns the hash.", - "schema": { - "$ref": "#/definitions/TemplateHashResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/CloudError" + "$ref": "#/definitions/TagsListResult" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } } }, "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, "GenericResourceFilter": { "properties": { "resourceType": { @@ -2016,116 +1462,6 @@ }, "description": "Resource group filter." }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - } - }, - "Deployment": { - "properties": { - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "CloudError": { - "x-ms-external": true, - "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" - } - }, - "description": "An error response for a resource management request." - }, "ResourceManagementErrorWithDetails": { "properties": { "code": { @@ -2257,175 +1593,6 @@ }, "description": "Resource provider information." }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "outputs": { - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "template": { - "type": "object", - "description": "The template content. Use only one of Template or TemplateLink." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template. Use only one of Template or TemplateLink." - }, - "parameters": { - "type": "object", - "description": "Deployment parameters. Use only one of Parameters or ParametersLink." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." - }, - "mode": { - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "$ref": "#/definitions/ResourceManagementErrorWithDetails", - "description": "Validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "type": "string", - "description": "The name of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - } - }, - "required": [ - "name" - ], - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentExtended" - }, - "description": "An array of deployments." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployments." - }, "ProviderListResult": { "properties": { "value": { @@ -2797,113 +1964,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code." - }, - "statusMessage": { - "readOnly": true, - "description": "Operation status message." - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -2984,19 +2044,6 @@ }, "description": "Resource group export result." }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, "ZoneMapping": { "properties": { "location": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/resources.json index b1d88218648a..04eb8e184826 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/resources.json @@ -34,409 +34,6 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to delete.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to check.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to cancel.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment from which to get the template.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { "post": { "tags": [ @@ -712,14 +309,14 @@ } ], "responses": { - "201": { - "description": "Created - Returns information about the new resource group.", + "200": { + "description": "OK - Returns information about the new resource group.", "schema": { "$ref": "#/definitions/ResourceGroup" } }, - "200": { - "description": "OK - Returns information about the new resource group.", + "201": { + "description": "Created - Returns information about the new resource group.", "schema": { "$ref": "#/definitions/ResourceGroup" } @@ -752,11 +349,11 @@ } ], "responses": { - "202": { - "description": "Accepted" - }, "200": { "description": "OK" + }, + "202": { + "description": "Accepted" } }, "x-ms-long-running-operation": true @@ -1204,11 +801,11 @@ "200": { "description": "OK" }, - "204": { - "description": "No Content" - }, "202": { "description": "Accepted" + }, + "204": { + "description": "No Content" } }, "x-ms-long-running-operation": true @@ -1282,14 +879,14 @@ } ], "responses": { - "201": { - "description": "Created - Returns information about the resource.", + "200": { + "description": "OK - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } }, - "200": { - "description": "OK - Returns information about the resource.", + "201": { + "description": "Created - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } @@ -1512,11 +1109,11 @@ "200": { "description": "OK" }, - "204": { - "description": "No Content" - }, "202": { "description": "Accepted" + }, + "204": { + "description": "No Content" } }, "x-ms-long-running-operation": true @@ -1555,14 +1152,14 @@ } ], "responses": { - "201": { - "description": "Created - Returns information about the resource.", + "200": { + "description": "OK - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } }, - "200": { - "description": "OK - Returns information about the resource.", + "201": { + "description": "Created - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } @@ -1832,311 +1429,38 @@ "nextLinkName": "nextLink" } } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment with the operation to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." - } - ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the hash.", - "schema": { - "$ref": "#/definitions/TemplateHashResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } } }, "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { + "GenericResourceFilter": { + "properties": { + "resourceType": { "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } + "description": "The resource type." }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." + "tagname": { + "type": "string", + "description": "The tag name." }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { + "tagvalue": { "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - } - }, - "Deployment": { - "properties": { - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." + "description": "The tag value." } }, - "description": "The deployment export result. " + "description": "Resource filter." }, - "CloudError": { - "x-ms-external": true, + "ResourceGroupFilter": { "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "tagName": { + "type": "string", + "description": "The tag name." + }, + "tagValue": { + "type": "string", + "description": "The tag value." } }, - "description": "An error response for a resource management request." + "description": "Resource group filter." }, "ResourceManagementErrorWithDetails": { "properties": { @@ -2269,226 +1593,6 @@ }, "description": "Resource provider information." }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "outputs": { - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "template": { - "type": "object", - "description": "The template content. Use only one of Template or TemplateLink." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template. Use only one of Template or TemplateLink." - }, - "parameters": { - "type": "object", - "description": "Deployment parameters. Use only one of Parameters or ParametersLink." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." - }, - "mode": { - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "OnErrorDeployment": { - "properties": { - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior." - }, - "OnErrorDeploymentExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning for the on error deployment." - }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "$ref": "#/definitions/ResourceManagementErrorWithDetails", - "description": "Validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "type": "string", - "description": "The name of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - } - }, - "required": [ - "name" - ], - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentExtended" - }, - "description": "An array of deployments." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployments." - }, "ProviderListResult": { "properties": { "value": { @@ -2863,114 +1967,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code." - }, - "statusMessage": { - "readOnly": true, - "type": "object", - "description": "Operation status message." - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -3051,19 +2047,6 @@ }, "description": "Resource group export result." }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, "ZoneMapping": { "properties": { "location": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json index 2bf9d670a0f6..c4550a51143d 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json @@ -59,58 +59,20 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to delete.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - } - }, - "x-ms-long-running-operation": true - }, - "head": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "name": "deploymentName", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The name of the deployment to check.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 + "description": "The namespace of the resource provider to unregister." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -120,40 +82,29 @@ } ], "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "name": "deploymentName", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "description": "The namespace of the resource provider to register." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -164,36 +115,36 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } } - }, - "x-ms-long-running-operation": true - }, + } + } + }, + "/subscriptions/{subscriptionId}/providers": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "name": "deploymentName", - "in": "path", - "required": true, + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all deployments." + }, + { + "name": "$expand", + "in": "query", + "required": false, "type": "string", - "description": "The name of the deployment to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -204,73 +155,38 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderListResult" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "name": "deploymentName", - "in": "path", - "required": true, + "name": "$expand", + "in": "query", + "required": false, "type": "string", - "description": "The name of the deployment to cancel.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "deploymentName", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -281,69 +197,45 @@ ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/Provider" } } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", "parameters": [ { - "name": "deploymentName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the deployment from which to get the template.", + "description": "The resource group with the resources to get.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, - "maxLength": 64 + "maxLength": 90 }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", - "parameters": [ - { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -351,7 +243,7 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -362,47 +254,36 @@ ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resources", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceListResult" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { + "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "description": "The name of the resource group to check. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to delete.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -411,41 +292,44 @@ } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, "204": { "description": "No Content" + }, + "404": { + "description": "Not Found" } - }, - "x-ms-long-running-operation": true + } }, - "head": { + "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, { - "name": "deploymentName", - "in": "path", + "name": "parameters", + "in": "body", "required": true, - "type": "string", - "description": "The name of the deployment to check.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 + "schema": { + "$ref": "#/definitions/ResourceGroup" + }, + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -455,51 +339,38 @@ } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the new resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, - "404": { - "description": "Not Found" + "201": { + "description": "Created - Returns information about the new resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } } } }, - "put": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "description": "The name of the resource group to delete. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -509,55 +380,31 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + "description": "OK" }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + "202": { + "description": "Accepted" } }, "x-ms-long-running-operation": true }, "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", + "description": "The name of the resource group to get. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -567,93 +414,39 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to cancel.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_Validate", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "description": "The name of the resource group to update. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Deployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -664,47 +457,40 @@ ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } } } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", + "description": "The name of the resource group to export as a template.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, { - "name": "deploymentName", - "in": "path", + "name": "parameters", + "in": "body", "required": true, - "type": "string", - "description": "The name of the deployment from which to get the template.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 + "schema": { + "$ref": "#/definitions/ExportTemplateRequest" + }, + "description": "Parameters for exporting the template." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -715,38 +501,28 @@ ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/ResourceGroupExportResult" } } } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -754,7 +530,7 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -765,32 +541,45 @@ ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { "post": { "tags": [ - "Providers" + "Resources" ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "name": "resourceProviderNamespace", + "name": "sourceResourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The namespace of the resource provider to unregister." + "description": "The name of the resource group containing the resources to move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -800,29 +589,43 @@ } ], "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" } - } + }, + "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { "post": { "tags": [ - "Providers" + "Resources" ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "name": "resourceProviderNamespace", + "name": "sourceResourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The namespace of the resource provider to register." + "description": "The name of the resource group containing the resources to validate for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -832,37 +635,48 @@ } ], "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "409": { + "description": "Conflict" } - } + }, + "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/providers": { + "/subscriptions/{subscriptionId}/resources": { "get": { "tags": [ - "Providers" + "Resources" ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "name": "$top", + "name": "$filter", "in": "query", "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all deployments." + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." }, { "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -873,557 +687,25 @@ ], "responses": { "200": { - "description": "OK - Returns an array of resource providers.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/ProviderListResult" + "$ref": "#/definitions/ResourceListResult" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" - } + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Providers" + "Resources" ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "200": { - "description": "OK" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to export as a template.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to validate for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "409": { - "description": "Conflict" - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { "name": "resourceGroupName", @@ -1549,11 +831,11 @@ "200": { "description": "OK" }, - "204": { - "description": "No Content" - }, "202": { "description": "Accepted" + }, + "204": { + "description": "No Content" } }, "x-ms-long-running-operation": true @@ -1627,14 +909,14 @@ } ], "responses": { - "201": { - "description": "Created - Returns information about the resource.", + "200": { + "description": "OK - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } }, - "200": { - "description": "OK - Returns information about the resource.", + "201": { + "description": "Created - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } @@ -1857,11 +1139,11 @@ "200": { "description": "OK" }, - "204": { - "description": "No Content" - }, "202": { "description": "Accepted" + }, + "204": { + "description": "No Content" } }, "x-ms-long-running-operation": true @@ -1900,14 +1182,14 @@ } ], "responses": { - "201": { - "description": "Created - Returns information about the resource.", + "200": { + "description": "OK - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } }, - "200": { - "description": "OK - Returns information about the resource.", + "201": { + "description": "Created - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } @@ -1958,250 +1240,67 @@ "$ref": "#/definitions/GenericResource" } }, - "202": { - "description": "Accepted" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "description": "Deletes a tag value.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "name": "tagValue", - "in": "path", - "required": true, - "type": "string", - "description": "The value of the tag to delete." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "No Content" - } - } - }, - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdateValue", - "description": "Creates a tag value. The name of the tag must already exist.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "name": "tagValue", - "in": "path", - "required": true, - "type": "string", - "description": "The value of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Created - Returns information about the tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a tag in the subscription.", - "description": "The tag name can have a maximum of 512 characters and is case insensitive. Tag names created by Azure have prefixes of microsoft, azure, or windows. You cannot create tags with one of these prefixes.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the tag.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - }, - "201": { - "description": "Created - Returns information about the tag.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_Delete", - "summary": "Deletes a tag from the subscription.", - "description": "You must remove all values from a resource tag before you can delete it.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "No Content" - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_List", - "description": "Gets the names and values of all resource tags that are defined in a subscription.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns an array of tag names and values.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagsListResult" + "$ref": "#/definitions/GenericResource" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", + "operationId": "Tags_DeleteValue", + "description": "Deletes a tag value.", "parameters": [ { - "name": "deploymentName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 + "description": "The name of the tag." }, { - "name": "operationId", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2212,39 +1311,33 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "OK" + }, + "204": { + "description": "No Content" } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_CreateOrUpdateValue", + "description": "Creates a tag value. The name of the tag must already exist.", "parameters": [ { - "name": "deploymentName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the deployment with the operation to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 + "description": "The name of the tag." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2255,51 +1348,35 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Created - Returns information about the tag value.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/TagValue" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a tag in the subscription.", + "description": "The tag name can have a maximum of 512 characters and is case insensitive. Tag names created by Azure have prefixes of microsoft, azure, or windows. You cannot create tags with one of these prefixes.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "operationId", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2310,49 +1387,33 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the tag.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Created - Returns information about the tag.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_Delete", + "summary": "Deletes a tag from the subscription.", + "description": "You must remove all values from a resource tag before you can delete it.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the deployment with the operation to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2363,217 +1424,73 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "description": "OK" + }, + "204": { + "description": "No Content" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "description": "Gets the names and values of all resource tags that are defined in a subscription.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", - "schema": { - "$ref": "#/definitions/TemplateHashResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/CloudError" + "$ref": "#/definitions/TagsListResult" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - } - }, - "Deployment": { + } + }, + "definitions": { + "GenericResourceFilter": { "properties": { - "location": { + "resourceType": { "type": "string", - "description": "The location to store the deployment data." + "description": "The resource type." }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." + "tagname": { + "type": "string", + "description": "The tag name." + }, + "tagvalue": { + "type": "string", + "description": "The tag value." } }, - "description": "The deployment export result. " + "description": "Resource filter." }, - "CloudError": { - "x-ms-external": true, + "ResourceGroupFilter": { "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "tagName": { + "type": "string", + "description": "The tag name." + }, + "tagValue": { + "type": "string", + "description": "The tag value." } }, - "description": "An error response for a resource management request." + "description": "Resource group filter." }, "ResourceManagementErrorWithDetails": { "properties": { @@ -2706,233 +1623,6 @@ }, "description": "Resource provider information." }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "outputs": { - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "template": { - "type": "object", - "description": "The template content. Use only one of Template or TemplateLink." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template. Use only one of Template or TemplateLink." - }, - "parameters": { - "type": "object", - "description": "Deployment parameters. Use only one of Parameters or ParametersLink." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." - }, - "mode": { - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "OnErrorDeployment": { - "properties": { - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior." - }, - "OnErrorDeploymentExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning for the on error deployment." - }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "$ref": "#/definitions/ResourceManagementErrorWithDetails", - "description": "Validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The name of the deployment." - }, - "type": { - "readOnly": true, - "type": "string", - "description": "The type of the deployment." - }, - "location": { - "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentExtended" - }, - "description": "An array of deployments." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployments." - }, "ProviderListResult": { "properties": { "value": { @@ -3332,114 +2022,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code." - }, - "statusMessage": { - "readOnly": true, - "type": "object", - "description": "Operation status message." - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -3567,19 +2149,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, "ZoneMapping": { "properties": { "location": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json index 571f4cf01b26..a195a9cf9aa0 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json @@ -59,58 +59,20 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to delete.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - } - }, - "x-ms-long-running-operation": true - }, - "head": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "name": "deploymentName", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The name of the deployment to check.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 + "description": "The namespace of the resource provider to unregister." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -120,40 +82,29 @@ } ], "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "name": "deploymentName", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "description": "The namespace of the resource provider to register." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -164,36 +115,36 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } } - }, - "x-ms-long-running-operation": true - }, + } + } + }, + "/subscriptions/{subscriptionId}/providers": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "name": "deploymentName", - "in": "path", - "required": true, + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all deployments." + }, + { + "name": "$expand", + "in": "query", + "required": false, "type": "string", - "description": "The name of the deployment to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -204,73 +155,38 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderListResult" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "name": "deploymentName", - "in": "path", - "required": true, + "name": "$expand", + "in": "query", + "required": false, "type": "string", - "description": "The name of the deployment to cancel.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "deploymentName", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -281,69 +197,45 @@ ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/Provider" } } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", "parameters": [ { - "name": "deploymentName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the deployment from which to get the template.", + "description": "The resource group with the resources to get.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, - "maxLength": 64 + "maxLength": 90 }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", - "parameters": [ - { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -351,7 +243,7 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -362,47 +254,36 @@ ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resources", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceListResult" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { + "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "description": "The name of the resource group to check. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to delete.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -411,41 +292,44 @@ } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, "204": { "description": "No Content" + }, + "404": { + "description": "Not Found" } - }, - "x-ms-long-running-operation": true + } }, - "head": { + "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, { - "name": "deploymentName", - "in": "path", + "name": "parameters", + "in": "body", "required": true, - "type": "string", - "description": "The name of the deployment to check.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 + "schema": { + "$ref": "#/definitions/ResourceGroup" + }, + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -455,51 +339,38 @@ } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the new resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, - "404": { - "description": "Not Found" + "201": { + "description": "Created - Returns information about the new resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } } } }, - "put": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "description": "The name of the resource group to delete. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -509,55 +380,31 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + "description": "OK" }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + "202": { + "description": "Accepted" } }, "x-ms-long-running-operation": true }, "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", + "description": "The name of the resource group to get. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -567,93 +414,39 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment to cancel.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_Validate", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", + "description": "The name of the resource group to update. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Deployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -664,47 +457,40 @@ ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } } } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", + "description": "The name of the resource group to export as a template.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, { - "name": "deploymentName", - "in": "path", + "name": "parameters", + "in": "body", "required": true, - "type": "string", - "description": "The name of the deployment from which to get the template.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 + "schema": { + "$ref": "#/definitions/ExportTemplateRequest" + }, + "description": "Parameters for exporting the template." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -713,40 +499,38 @@ "$ref": "#/parameters/SubscriptionIdParameter" } ], + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" + }, + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + } + }, "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/ResourceGroupExportResult" } } } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -754,7 +538,7 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -765,32 +549,45 @@ ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { "post": { "tags": [ - "Providers" + "Resources" ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "name": "resourceProviderNamespace", + "name": "sourceResourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The namespace of the resource provider to unregister." + "description": "The name of the resource group containing the resources to move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -800,29 +597,43 @@ } ], "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" } - } + }, + "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { "post": { "tags": [ - "Providers" + "Resources" ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "name": "resourceProviderNamespace", + "name": "sourceResourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The namespace of the resource provider to register." + "description": "The name of the resource group containing the resources to validate for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -832,37 +643,48 @@ } ], "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "409": { + "description": "Conflict" } - } + }, + "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/providers": { + "/subscriptions/{subscriptionId}/resources": { "get": { "tags": [ - "Providers" + "Resources" ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "name": "$top", + "name": "$filter", "in": "query", "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all deployments." + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." }, { "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -873,562 +695,22 @@ ], "responses": { "200": { - "description": "OK - Returns an array of resource providers.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/ProviderListResult" + "$ref": "#/definitions/ResourceListResult" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" - } + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "200": { - "description": "OK" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to export as a template.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to validate for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "409": { - "description": "Conflict" - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" + "Resources" ], "operationId": "Resources_CheckExistence", "description": "Checks whether a resource exists.", @@ -1557,11 +839,11 @@ "200": { "description": "OK" }, - "204": { - "description": "No Content" - }, "202": { "description": "Accepted" + }, + "204": { + "description": "No Content" } }, "x-ms-long-running-operation": true @@ -1635,14 +917,14 @@ } ], "responses": { - "201": { - "description": "Created - Returns information about the resource.", + "200": { + "description": "OK - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } }, - "200": { - "description": "OK - Returns information about the resource.", + "201": { + "description": "Created - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } @@ -1865,11 +1147,11 @@ "200": { "description": "OK" }, - "204": { - "description": "No Content" - }, "202": { "description": "Accepted" + }, + "204": { + "description": "No Content" } }, "x-ms-long-running-operation": true @@ -1908,14 +1190,14 @@ } ], "responses": { - "201": { - "description": "Created - Returns information about the resource.", + "200": { + "description": "OK - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } }, - "200": { - "description": "OK - Returns information about the resource.", + "201": { + "description": "Created - Returns information about the resource.", "schema": { "$ref": "#/definitions/GenericResource" } @@ -1966,250 +1248,67 @@ "$ref": "#/definitions/GenericResource" } }, - "202": { - "description": "Accepted" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "description": "Deletes a tag value.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "name": "tagValue", - "in": "path", - "required": true, - "type": "string", - "description": "The value of the tag to delete." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "No Content" - } - } - }, - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdateValue", - "description": "Creates a tag value. The name of the tag must already exist.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "name": "tagValue", - "in": "path", - "required": true, - "type": "string", - "description": "The value of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Created - Returns information about the tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a tag in the subscription.", - "description": "The tag name can have a maximum of 512 characters and is case insensitive. Tag names created by Azure have prefixes of microsoft, azure, or windows. You cannot create tags with one of these prefixes.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the tag.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - }, - "201": { - "description": "Created - Returns information about the tag.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_Delete", - "summary": "Deletes a tag from the subscription.", - "description": "You must remove all values from a resource tag before you can delete it.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "No Content" - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_List", - "description": "Gets the names and values of all resource tags that are defined in a subscription.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns an array of tag names and values.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagsListResult" + "$ref": "#/definitions/GenericResource" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", + "operationId": "Tags_DeleteValue", + "description": "Deletes a tag value.", "parameters": [ { - "name": "deploymentName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 + "description": "The name of the tag." }, { - "name": "operationId", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2220,39 +1319,33 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "OK" + }, + "204": { + "description": "No Content" } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_CreateOrUpdateValue", + "description": "Creates a tag value. The name of the tag must already exist.", "parameters": [ { - "name": "deploymentName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the deployment with the operation to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 + "description": "The name of the tag." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2263,51 +1356,35 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Created - Returns information about the tag value.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/TagValue" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a tag in the subscription.", + "description": "The tag name can have a maximum of 512 characters and is case insensitive. Tag names created by Azure have prefixes of microsoft, azure, or windows. You cannot create tags with one of these prefixes.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the deployment.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "operationId", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2318,49 +1395,33 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the tag.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Created - Returns information about the tag.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_Delete", + "summary": "Deletes a tag from the subscription.", + "description": "You must remove all values from a resource tag before you can delete it.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "deploymentName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the deployment with the operation to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 64 - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2371,217 +1432,73 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "description": "OK" + }, + "204": { + "description": "No Content" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "description": "Gets the names and values of all resource tags that are defined in a subscription.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", - "schema": { - "$ref": "#/definitions/TemplateHashResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/CloudError" + "$ref": "#/definitions/TagsListResult" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - } - }, - "Deployment": { + } + }, + "definitions": { + "GenericResourceFilter": { "properties": { - "location": { + "resourceType": { "type": "string", - "description": "The location to store the deployment data." + "description": "The resource type." }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." + "tagname": { + "type": "string", + "description": "The tag name." + }, + "tagvalue": { + "type": "string", + "description": "The tag value." } }, - "description": "The deployment export result. " + "description": "Resource filter." }, - "CloudError": { - "x-ms-external": true, + "ResourceGroupFilter": { "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "tagName": { + "type": "string", + "description": "The tag name." + }, + "tagValue": { + "type": "string", + "description": "The tag value." } }, - "description": "An error response for a resource management request." + "description": "Resource group filter." }, "ResourceManagementErrorWithDetails": { "properties": { @@ -2723,233 +1640,6 @@ }, "description": "Resource provider information." }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "outputs": { - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "template": { - "type": "object", - "description": "The template content. Use only one of Template or TemplateLink." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template. Use only one of Template or TemplateLink." - }, - "parameters": { - "type": "object", - "description": "Deployment parameters. Use only one of Parameters or ParametersLink." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." - }, - "mode": { - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "OnErrorDeployment": { - "properties": { - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior." - }, - "OnErrorDeploymentExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning for the on error deployment." - }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "$ref": "#/definitions/ResourceManagementErrorWithDetails", - "description": "Validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The name of the deployment." - }, - "type": { - "readOnly": true, - "type": "string", - "description": "The type of the deployment." - }, - "location": { - "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentExtended" - }, - "description": "An array of deployments." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployments." - }, "ProviderListResult": { "properties": { "value": { @@ -3349,114 +2039,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code." - }, - "statusMessage": { - "readOnly": true, - "type": "object", - "description": "Operation status message." - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -3584,19 +2166,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, "ZoneMapping": { "properties": { "location": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json index f80f9900774a..a19cb570d64d 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json @@ -59,250 +59,183 @@ } } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - } - } - }, - "put": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } } } } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } } } } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/subscriptions/{subscriptionId}/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all deployments." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ProviderListResult" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/Provider" } } } } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -310,64 +243,46 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resources", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceListResult" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - } - }, - "x-ms-long-running-operation": true - }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" @@ -387,23 +302,34 @@ }, "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Deployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -414,58 +340,70 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } } - }, - "x-ms-long-running-operation": true + } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, { "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "description": "OK" + }, + "202": { + "description": "Accepted" } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" @@ -475,31 +413,40 @@ } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Deployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -510,30 +457,40 @@ ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to export as a template.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExportTemplateRequest" + }, + "description": "Parameters for exporting the template." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -542,30 +499,38 @@ "$ref": "#/parameters/SubscriptionIdParameter" } ], + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" + }, + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + } + }, "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/ResourceGroupExportResult" } } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -573,7 +538,7 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -584,39 +549,45 @@ ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "name": "resourceGroupName", + "name": "sourceResourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "description": "The name of the resource group containing the resources to move.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -627,33 +598,42 @@ ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" } }, "x-ms-long-running-operation": true - }, - "head": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "name": "resourceGroupName", + "name": "sourceResourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", + "description": "The name of the resource group containing the resources to validate for move.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -663,43 +643,48 @@ } ], "responses": { + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" + "409": { + "description": "Conflict" } - } - }, - "put": { + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resources": { + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, + "name": "$filter", + "in": "query", + "required": false, "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -710,1009 +695,65 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceListResult" } } }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - } + "x-ms-pageable": { + "nextLinkName": "nextLink" }, - "x-ms-long-running-operation": true - }, - "get": { + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all deployments." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "200": { - "description": "OK" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to export as a template.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to validate for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "409": { - "description": "Conflict" - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." }, { "name": "api-version", @@ -1727,31 +768,27 @@ } ], "responses": { - "200": { - "description": "OK" - }, "204": { "description": "No Content" }, - "202": { - "description": "Accepted" + "404": { + "description": "Not Found" } - }, - "x-ms-long-running-operation": true + } }, - "put": { + "delete": { "tags": [ "Resources" ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 @@ -1776,7 +813,7 @@ "in": "path", "required": true, "type": "string", - "description": "The resource type of the resource to create.", + "description": "The resource type.", "x-ms-skip-url-encoding": true }, { @@ -1784,7 +821,7 @@ "in": "path", "required": true, "type": "string", - "description": "The name of the resource to create." + "description": "The name of the resource to delete." }, { "name": "api-version", @@ -1794,44 +831,29 @@ "description": "The API version to use for the operation.", "x-ms-api-version": false }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, { "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } + "description": "OK" }, "202": { "description": "Accepted" + }, + "204": { + "description": "No Content" } }, "x-ms-long-running-operation": true }, - "patch": { + "put": { "tags": [ "Resources" ], - "operationId": "Resources_Update", - "description": "Updates a resource.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { "name": "resourceGroupName", @@ -1863,7 +885,7 @@ "in": "path", "required": true, "type": "string", - "description": "The resource type of the resource to update.", + "description": "The resource type of the resource to create.", "x-ms-skip-url-encoding": true }, { @@ -1871,7 +893,7 @@ "in": "path", "required": true, "type": "string", - "description": "The name of the resource to update." + "description": "The name of the resource to create." }, { "name": "api-version", @@ -1888,7 +910,7 @@ "schema": { "$ref": "#/definitions/GenericResource" }, - "description": "Parameters for updating the resource." + "description": "Parameters for creating or updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1901,25 +923,31 @@ "$ref": "#/definitions/GenericResource" } }, + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true }, - "get": { + "patch": { "tags": [ "Resources" ], - "operationId": "Resources_Get", - "description": "Gets a resource.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "description": "The name of the resource group for the resource. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 @@ -1929,191 +957,31 @@ "in": "path", "required": true, "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - } - } - } - }, - "/{resourceId}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "No Content" - }, - "202": { - "description": "Accepted" - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ + "description": "The namespace of the resource provider." + }, { - "name": "resourceId", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", "x-ms-skip-url-encoding": true }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." + }, { "name": "api-version", "in": "query", @@ -2129,7 +997,10 @@ "schema": { "$ref": "#/definitions/GenericResource" }, - "description": "Update resource parameters." + "description": "Parameters for updating the resource." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -2149,97 +1020,56 @@ "tags": [ "Resources" ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "name": "resourceId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "description": "Deletes a tag value.", - "parameters": [ - { - "name": "tagName", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The namespace of the resource provider." }, { - "name": "tagValue", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to delete." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "204": { - "description": "No Content" - } - } - }, - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdateValue", - "description": "Creates a tag value. The name of the tag must already exist.", - "parameters": [ { - "name": "tagName", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true }, { - "name": "tagValue", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to create." + "description": "The name of the resource to get." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -2247,209 +1077,238 @@ ], "responses": { "200": { - "description": "OK - Returns information about the tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Created - Returns information about the tag value.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagValue" + "$ref": "#/definitions/GenericResource" } } } } }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { + "/{resourceId}": { + "head": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a tag in the subscription.", - "description": "The tag name can have a maximum of 512 characters and is case insensitive. Tag names created by Azure have prefixes of microsoft, azure, or windows. You cannot create tags with one of these prefixes.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists.", "parameters": [ { - "name": "tagName", + "name": "resourceId", "in": "path", "required": true, "type": "string", - "description": "The name of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { - "200": { - "description": "OK - Returns information about the tag.", - "schema": { - "$ref": "#/definitions/TagDetails" - } + "204": { + "description": "No Content" }, - "201": { - "description": "Created - Returns information about the tag.", - "schema": { - "$ref": "#/definitions/TagDetails" - } + "404": { + "description": "Not Found" } } }, "delete": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_Delete", - "summary": "Deletes a tag from the subscription.", - "description": "You must remove all values from a resource tag before you can delete it.", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "name": "tagName", + "name": "resourceId", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { "description": "OK" }, + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_List", - "description": "Gets the names and values of all resource tags that are defined in a subscription.", + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns an array of tag names and values.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagsListResult" + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" } + }, + "202": { + "description": "Accepted" } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", - "in": "path", + "name": "api-version", + "in": "query", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } + }, + "202": { + "description": "Accepted" } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", + "operationId": "Tags_DeleteValue", + "description": "Deletes a tag value.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "operationId", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2460,32 +1319,33 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "OK" + }, + "204": { + "description": "No Content" } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_CreateOrUpdateValue", + "description": "Creates a tag value. The name of the tag must already exist.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2496,44 +1356,35 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Created - Returns information about the tag value.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/TagValue" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a tag in the subscription.", + "description": "The tag name can have a maximum of 512 characters and is case insensitive. Tag names created by Azure have prefixes of microsoft, azure, or windows. You cannot create tags with one of these prefixes.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2544,42 +1395,33 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the tag.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Created - Returns information about the tag.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_Delete", + "summary": "Deletes a tag from the subscription.", + "description": "You must remove all values from a resource tag before you can delete it.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2590,70 +1432,44 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "description": "OK" + }, + "204": { + "description": "No Content" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "description": "Gets the names and values of all resource tags that are defined in a subscription.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", - "schema": { - "$ref": "#/definitions/TemplateHashResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/CloudError" + "$ref": "#/definitions/TagsListResult" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } } }, "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, "GenericResourceFilter": { "properties": { "resourceType": { @@ -2666,142 +1482,23 @@ }, "tagvalue": { "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + "description": "The tag value." } }, - "description": "The debug setting." + "description": "Resource filter." }, - "Deployment": { + "ResourceGroupFilter": { "properties": { - "location": { + "tagName": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "CloudError": { - "x-ms-external": true, - "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "tagValue": { + "type": "string", + "description": "The tag value." } }, - "description": "An error response for a resource management request." + "description": "Resource group filter." }, "ResourceManagementErrorWithDetails": { "properties": { @@ -2943,238 +1640,6 @@ }, "description": "Resource provider information." }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "template": { - "type": "object", - "description": "The template content. Use only one of Template or TemplateLink." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template. Use only one of Template or TemplateLink." - }, - "parameters": { - "type": "object", - "description": "Deployment parameters. Use only one of Parameters or ParametersLink." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." - }, - "mode": { - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "OnErrorDeployment": { - "properties": { - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior." - }, - "OnErrorDeploymentExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning for the on error deployment." - }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "$ref": "#/definitions/ResourceManagementErrorWithDetails", - "description": "Validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The name of the deployment." - }, - "type": { - "readOnly": true, - "type": "string", - "description": "The type of the deployment." - }, - "location": { - "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentExtended" - }, - "description": "An array of deployments." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployments." - }, "ProviderListResult": { "properties": { "value": { @@ -3576,119 +2041,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code." - }, - "statusMessage": { - "readOnly": true, - "type": "object", - "description": "Operation status message." - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -3816,19 +2168,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, "ZoneMapping": { "properties": { "location": { @@ -3845,16 +2184,6 @@ } }, "parameters": { - "GroupIdParameter": { - "name": "groupId", - "in": "path", - "required": true, - "type": "string", - "description": "The management group ID.", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 90 - }, "SubscriptionIdParameter": { "name": "subscriptionId", "in": "path", @@ -3862,17 +2191,6 @@ "type": "string", "description": "The ID of the target subscription." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json index d6a32b3698b1..5f12aa221cc0 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json @@ -59,218 +59,213 @@ } } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider to register." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } } - }, + } + }, + "/subscriptions/{subscriptionId}/providers": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all deployments." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderListResult" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all providers." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/Provider" } } } } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -278,31 +273,45 @@ ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/Provider" } } } } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -310,64 +319,46 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resources", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceListResult" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - } - }, - "x-ms-long-running-operation": true - }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" @@ -387,23 +378,34 @@ }, "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Deployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -414,29 +416,36 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } } - }, - "x-ms-long-running-operation": true + } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" @@ -447,25 +456,30 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "description": "OK" + }, + "202": { + "description": "Accepted" } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" @@ -475,31 +489,40 @@ } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Deployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -510,30 +533,40 @@ ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to export as a template.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExportTemplateRequest" + }, + "description": "Parameters for exporting the template." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -542,30 +575,38 @@ "$ref": "#/parameters/SubscriptionIdParameter" } ], + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" + }, + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + } + }, "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/ResourceGroupExportResult" } } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -573,7 +614,7 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -584,39 +625,45 @@ ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "name": "resourceGroupName", + "name": "sourceResourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", + "description": "The name of the resource group containing the resources to move.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -627,79 +674,42 @@ ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" } }, "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - } - } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "name": "resourceGroupName", + "name": "sourceResourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", + "description": "The name of the resource group containing the resources to validate for move.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Deployment" + "$ref": "#/definitions/ResourcesMoveInfo" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -709,48 +719,48 @@ } ], "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "202": { + "description": "Accepted" }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" + "204": { + "description": "No Content" }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" + "409": { + "description": "Conflict" } }, "x-ms-long-running-operation": true - }, + } + }, + "/subscriptions/{subscriptionId}/resources": { "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, + "name": "$filter", + "in": "query", + "required": false, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -761,1019 +771,50 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceListResult" } } - } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." }, { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all deployments." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all providers." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "200": { - "description": "OK" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to export as a template.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to validate for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "409": { - "description": "Conflict" - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { "name": "resourceType", @@ -1788,7 +829,7 @@ "in": "path", "required": true, "type": "string", - "description": "The name of the resource to delete." + "description": "The name of the resource to check whether it exists." }, { "name": "api-version", @@ -1803,31 +844,27 @@ } ], "responses": { - "200": { - "description": "OK" - }, "204": { "description": "No Content" }, - "202": { - "description": "Accepted" + "404": { + "description": "Not Found" } - }, - "x-ms-long-running-operation": true + } }, - "put": { + "delete": { "tags": [ "Resources" ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 @@ -1852,7 +889,7 @@ "in": "path", "required": true, "type": "string", - "description": "The resource type of the resource to create.", + "description": "The resource type.", "x-ms-skip-url-encoding": true }, { @@ -1860,7 +897,7 @@ "in": "path", "required": true, "type": "string", - "description": "The name of the resource to create." + "description": "The name of the resource to delete." }, { "name": "api-version", @@ -1870,44 +907,29 @@ "description": "The API version to use for the operation.", "x-ms-api-version": false }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, { "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } + "description": "OK" }, "202": { "description": "Accepted" + }, + "204": { + "description": "No Content" } }, "x-ms-long-running-operation": true }, - "patch": { + "put": { "tags": [ "Resources" ], - "operationId": "Resources_Update", - "description": "Updates a resource.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { "name": "resourceGroupName", @@ -1939,7 +961,7 @@ "in": "path", "required": true, "type": "string", - "description": "The resource type of the resource to update.", + "description": "The resource type of the resource to create.", "x-ms-skip-url-encoding": true }, { @@ -1947,7 +969,7 @@ "in": "path", "required": true, "type": "string", - "description": "The name of the resource to update." + "description": "The name of the resource to create." }, { "name": "api-version", @@ -1964,7 +986,7 @@ "schema": { "$ref": "#/definitions/GenericResource" }, - "description": "Parameters for updating the resource." + "description": "Parameters for creating or updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1977,25 +999,31 @@ "$ref": "#/definitions/GenericResource" } }, + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true }, - "get": { + "patch": { "tags": [ "Resources" ], - "operationId": "Resources_Get", - "description": "Gets a resource.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "description": "The name of the resource group for the resource. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 @@ -2005,191 +1033,31 @@ "in": "path", "required": true, "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - } - } - } - }, - "/{resourceId}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "No Content" - }, - "202": { - "description": "Accepted" - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ + "description": "The namespace of the resource provider." + }, { - "name": "resourceId", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", "x-ms-skip-url-encoding": true }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." + }, { "name": "api-version", "in": "query", @@ -2205,7 +1073,10 @@ "schema": { "$ref": "#/definitions/GenericResource" }, - "description": "Update resource parameters." + "description": "Parameters for updating the resource." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -2225,97 +1096,56 @@ "tags": [ "Resources" ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "name": "resourceId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "description": "Deletes a tag value.", - "parameters": [ - { - "name": "tagName", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The namespace of the resource provider." }, { - "name": "tagValue", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to delete." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "204": { - "description": "No Content" - } - } - }, - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdateValue", - "description": "Creates a tag value. The name of the tag must already exist.", - "parameters": [ { - "name": "tagName", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true }, { - "name": "tagValue", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to create." + "description": "The name of the resource to get." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -2323,209 +1153,238 @@ ], "responses": { "200": { - "description": "OK - Returns information about the tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Created - Returns information about the tag value.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagValue" + "$ref": "#/definitions/GenericResource" } } } } }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { + "/{resourceId}": { + "head": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a tag in the subscription.", - "description": "The tag name can have a maximum of 512 characters and is case insensitive. Tag names created by Azure have prefixes of microsoft, azure, or windows. You cannot create tags with one of these prefixes.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists.", "parameters": [ { - "name": "tagName", + "name": "resourceId", "in": "path", "required": true, "type": "string", - "description": "The name of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { - "200": { - "description": "OK - Returns information about the tag.", - "schema": { - "$ref": "#/definitions/TagDetails" - } + "204": { + "description": "No Content" }, - "201": { - "description": "Created - Returns information about the tag.", - "schema": { - "$ref": "#/definitions/TagDetails" - } + "404": { + "description": "Not Found" } } }, "delete": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_Delete", - "summary": "Deletes a tag from the subscription.", - "description": "You must remove all values from a resource tag before you can delete it.", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "name": "tagName", + "name": "resourceId", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { "description": "OK" }, + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_List", - "description": "Gets the names and values of all resource tags that are defined in a subscription.", + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns an array of tag names and values.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagsListResult" + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" } + }, + "202": { + "description": "Accepted" } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", - "in": "path", + "name": "api-version", + "in": "query", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } + }, + "202": { + "description": "Accepted" } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", + "operationId": "Tags_DeleteValue", + "description": "Deletes a tag value.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "operationId", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2536,32 +1395,33 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "OK" + }, + "204": { + "description": "No Content" } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_CreateOrUpdateValue", + "description": "Creates a tag value. The name of the tag must already exist.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2572,44 +1432,35 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Created - Returns information about the tag value.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/TagValue" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a tag in the subscription.", + "description": "The tag name can have a maximum of 512 characters and is case insensitive. Tag names created by Azure have prefixes of microsoft, azure, or windows. You cannot create tags with one of these prefixes.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2620,42 +1471,33 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the tag.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Created - Returns information about the tag.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_Delete", + "summary": "Deletes a tag from the subscription.", + "description": "You must remove all values from a resource tag before you can delete it.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -2666,70 +1508,44 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "description": "OK" + }, + "204": { + "description": "No Content" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "description": "Gets the names and values of all resource tags that are defined in a subscription.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", - "schema": { - "$ref": "#/definitions/TemplateHashResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/CloudError" + "$ref": "#/definitions/TagsListResult" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } } }, "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, "GenericResourceFilter": { "properties": { "resourceType": { @@ -2742,142 +1558,23 @@ }, "tagvalue": { "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." + "description": "The tag value." } }, - "description": "The debug setting." + "description": "Resource filter." }, - "Deployment": { + "ResourceGroupFilter": { "properties": { - "location": { + "tagName": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "CloudError": { - "x-ms-external": true, - "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "tagValue": { + "type": "string", + "description": "The tag value." } }, - "description": "An error response for a resource management request." + "description": "Resource group filter." }, "ResourceManagementErrorWithDetails": { "properties": { @@ -3019,238 +1716,6 @@ }, "description": "Resource provider information." }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "template": { - "type": "object", - "description": "The template content. Use only one of Template or TemplateLink." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template. Use only one of Template or TemplateLink." - }, - "parameters": { - "type": "object", - "description": "Deployment parameters. Use only one of Parameters or ParametersLink." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." - }, - "mode": { - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "OnErrorDeployment": { - "properties": { - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior." - }, - "OnErrorDeploymentExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning for the on error deployment." - }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "$ref": "#/definitions/ResourceManagementErrorWithDetails", - "description": "Validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The name of the deployment." - }, - "type": { - "readOnly": true, - "type": "string", - "description": "The type of the deployment." - }, - "location": { - "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentExtended" - }, - "description": "An array of deployments." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployments." - }, "ProviderListResult": { "properties": { "value": { @@ -3652,119 +2117,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code." - }, - "statusMessage": { - "readOnly": true, - "type": "object", - "description": "Operation status message." - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -3892,19 +2244,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, "ZoneMapping": { "properties": { "location": { @@ -3921,16 +2260,6 @@ } }, "parameters": { - "GroupIdParameter": { - "name": "groupId", - "in": "path", - "required": true, - "type": "string", - "description": "The management group ID.", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 90 - }, "SubscriptionIdParameter": { "name": "subscriptionId", "in": "path", @@ -3938,17 +2267,6 @@ "type": "string", "description": "The ID of the target subscription." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json index 47f5b49ab1ef..501c1bffb5eb 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json @@ -65,64 +65,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", + "200": { + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/CloudError" + "$ref": "#/definitions/Provider" } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -131,45 +101,35 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtScope", - "summary": "Deploys resources at a given scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider to register." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } }, "default": { @@ -178,36 +138,44 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at a given scope.": { - "$ref": "./examples/PutDeploymentAtScope.json" - } } - }, + } + }, + "/subscriptions/{subscriptionId}/providers": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtScope", - "description": "Gets a deployment.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all deployments." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -216,31 +184,45 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all providers." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -248,47 +230,46 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtScope", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -300,19 +281,27 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -320,9 +309,9 @@ ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -334,23 +323,37 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtScope", - "description": "Get all the deployments at the given scope.", + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -358,17 +361,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resources", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -381,53 +387,32 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { + "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_DeleteAtTenantScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtTenantScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -447,39 +432,53 @@ }, "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdateAtTenantScope", - "summary": "Deploys resources at tenant scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Deployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -488,34 +487,39 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at tenant scope.": { - "$ref": "./examples/PutDeploymentAtTenant.json" - } } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtTenantScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "description": "OK" + }, + "202": { + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -523,28 +527,39 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtTenantScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -553,43 +568,46 @@ } } } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtTenantScope", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Deployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -601,26 +619,53 @@ } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ExportTemplateAtTenantScope", - "description": "Exports the template used for specified deployment.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to export as a template.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExportTemplateRequest" + }, + "description": "Parameters for exporting the template." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" + }, + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + } + }, "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/ResourceGroupExportResult" } }, "default": { @@ -632,20 +677,20 @@ } } }, - "/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtTenantScope", - "description": "Get all the deployments at the tenant scope.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -653,17 +698,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } }, "default": { @@ -676,31 +724,47 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" @@ -713,77 +777,102 @@ } }, "x-ms-long-running-operation": true - }, - "head": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to validate for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - }, - "put": { + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resources": { + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -793,69 +882,79 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, - "get": { - "tags": [ - "Deployments" + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { + "tags": [ + "Resources" ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "204": { "description": "No Content" }, + "404": { + "description": "Not Found" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -863,47 +962,75 @@ } } } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "name": "parameters", - "in": "body", + "name": "resourceName", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The name of the resource to delete." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "description": "OK" }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -911,118 +1038,92 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to create." }, { - "name": "$filter", + "name": "api-version", "in": "query", - "required": false, + "required": true, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/GenericResource" } }, - "default": { - "description": "Error response describing why the operation failed.", + "201": { + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/CloudError" + "$ref": "#/definitions/GenericResource" } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -1033,60 +1134,69 @@ }, "x-ms-long-running-operation": true }, - "head": { + "patch": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "404": { - "description": "Not Found" + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Deployment" + "$ref": "#/definitions/GenericResource" }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "Parameters for updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1094,16 +1204,13 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/GenericResource" } }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "202": { + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -1116,16 +1223,58 @@ }, "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1133,9 +1282,9 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -1147,29 +1296,38 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/{resourceId}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "204": { "description": "No Content" }, + "404": { + "description": "Not Found" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -1177,47 +1335,40 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceId", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "description": "OK" }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -1225,56 +1376,58 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_WhatIfAtSubscriptionScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/DeploymentWhatIf" + "$ref": "#/definitions/GenericResource" }, - "description": "Parameters to What If." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns What-If operation status", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/WhatIfOperationResult" + "$ref": "#/definitions/GenericResource" } }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -1282,86 +1435,89 @@ } } }, - "x-ms-examples": { - "Predict template changes at subscription scope": { - "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "name": "$filter", - "in": "query", - "required": false, + "name": "resourceId", + "in": "path", + "required": true, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -1370,77 +1526,30 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { "delete": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Tags_DeleteValue", + "description": "Deletes a tag value.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "description": "The name of the tag." }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ { - "name": "resourceGroupName", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1450,12 +1559,12 @@ } ], "responses": { + "200": { + "description": "OK" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -1466,33 +1575,24 @@ }, "put": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Tags_CreateOrUpdateValue", + "description": "Creates a tag value. The name of the tag must already exist.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "description": "The name of the tag." }, { - "name": "parameters", - "in": "body", + "name": "tagValue", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1503,15 +1603,15 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the tag value.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/TagValue" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the tag value.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/TagValue" } }, "default": { @@ -1520,36 +1620,24 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { + } + } + }, + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a tag in the subscription.", + "description": "The tag name can have a maximum of 512 characters and is case insensitive. Tag names created by Azure have prefixes of microsoft, azure, or windows. You cannot create tags with one of these prefixes.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1560,9 +1648,15 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the tag.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Created - Returns information about the tag.", + "schema": { + "$ref": "#/definitions/TagDetails" } }, "default": { @@ -1572,29 +1666,21 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "operationId": "Tags_Delete", + "summary": "Deletes a tag from the subscription.", + "description": "You must remove all values from a resource tag before you can delete it.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1604,6 +1690,9 @@ } ], "responses": { + "200": { + "description": "OK" + }, "204": { "description": "No Content" }, @@ -1616,36 +1705,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Validate", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Tags_List", + "description": "Gets the names and values of all resource tags that are defined in a subscription.", "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -1655,15 +1722,9 @@ ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/TagsListResult" } }, "default": { @@ -1672,2545 +1733,43 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } + } + }, + "definitions": { + "GenericResourceFilter": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "tagname": { + "type": "string", + "description": "The tag name." + }, + "tagvalue": { + "type": "string", + "description": "The tag value." + } + }, + "description": "Resource filter." }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIf", - "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at resource group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all deployments." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all providers." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "200": { - "description": "OK" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to export as a template.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to validate for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "No Content" - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to create." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Update", - "description": "Updates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to update.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to update." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Get", - "description": "Gets a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{resourceId}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "No Content" - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "description": "Deletes a tag value.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "name": "tagValue", - "in": "path", - "required": true, - "type": "string", - "description": "The value of the tag to delete." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdateValue", - "description": "Creates a tag value. The name of the tag must already exist.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "name": "tagValue", - "in": "path", - "required": true, - "type": "string", - "description": "The value of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Created - Returns information about the tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a tag in the subscription.", - "description": "The tag name can have a maximum of 512 characters and is case insensitive. Tag names created by Azure have prefixes of microsoft, azure, or windows. You cannot create tags with one of these prefixes.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the tag.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - }, - "201": { - "description": "Created - Returns information about the tag.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_Delete", - "summary": "Deletes a tag from the subscription.", - "description": "You must remove all values from a resource tag before you can delete it.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "description": "Gets the names and values of all resource tags that are defined in a subscription.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of tag names and values.", - "schema": { - "$ref": "#/definitions/TagsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtTenantScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtTenantScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." - } - ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the hash.", - "schema": { - "$ref": "#/definitions/TemplateHashResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - }, - "description": "The debug setting." - }, - "Deployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "DeploymentWhatIf": { + "ResourceGroupFilter": { "properties": { - "location": { + "tagName": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "DeploymentWhatIfProperties": { - "properties": { - "whatIfSettings": { - "$ref": "#/definitions/DeploymentWhatIfSettings", - "description": "Optional What-If operation settings." - } - }, - "allOf": [ - { - "$ref": "#/definitions/DeploymentProperties" - } - ], - "description": "Deployment What-if properties." - }, - "DeploymentWhatIfSettings": { - "properties": { - "resultFormat": { + "tagValue": { "type": "string", - "description": "The format of the What-If results", - "enum": [ - "ResourceIdOnly", - "FullResourcePayloads" - ], - "x-ms-enum": { - "name": "WhatIfResultFormat", - "modelAsString": false - } + "description": "The tag value." } }, - "description": "Deployment What-If operation settings." + "description": "Resource group filter." }, "CloudError": { "x-ms-external": true, @@ -4239,331 +1798,99 @@ }, "AliasType": { "properties": { - "name": { - "type": "string", - "description": "The alias name." - }, - "paths": { - "type": "array", - "items": { - "$ref": "#/definitions/AliasPathType" - }, - "description": "The paths for an alias." - } - }, - "description": "The alias type. " - }, - "ProviderResourceType": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "locations": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The collection of locations where this resource type can be created." - }, - "aliases": { - "type": "array", - "items": { - "$ref": "#/definitions/AliasType" - }, - "description": "The aliases that are supported by this resource type." - }, - "apiVersions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The API version." - }, - "zoneMappings": { - "type": "array", - "items": { - "$ref": "#/definitions/ZoneMapping" - } - }, - "capabilities": { - "type": "string", - "description": "The additional capabilities offered by this resource type." - }, - "properties": { - "type": "object", - "additionalProperties": { - "type": "string", - "description": "The additional properties. " - }, - "description": "The properties." - } - }, - "description": "Resource type managed by the resource provider." - }, - "Provider": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The provider ID." - }, - "namespace": { - "type": "string", - "description": "The namespace of the resource provider." - }, - "registrationState": { - "readOnly": true, - "type": "string", - "description": "The registration state of the resource provider." - }, - "registrationPolicy": { - "readOnly": true, - "type": "string", - "description": "The registration policy of the resource provider." - }, - "resourceTypes": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/ProviderResourceType" - }, - "description": "The collection of provider resource types." - } - }, - "description": "Resource provider information." - }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "template": { - "type": "object", - "description": "The template content. Use only one of Template or TemplateLink." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template. Use only one of Template or TemplateLink." - }, - "parameters": { - "type": "object", - "description": "Deployment parameters. Use only one of Parameters or ParametersLink." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." - }, - "mode": { - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "OnErrorDeployment": { - "properties": { - "type": { + "name": { "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } + "description": "The alias name." }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPathType" + }, + "description": "The paths for an alias." } }, - "description": "Deployment on error behavior." + "description": "The alias type. " }, - "OnErrorDeploymentExtended": { + "ProviderResourceType": { "properties": { - "provisioningState": { - "readOnly": true, + "resourceType": { "type": "string", - "description": "The state of the provisioning for the on error deployment." + "description": "The resource type." }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasType" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" } }, - "deploymentName": { + "capabilities": { "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment validation error." + "description": "The additional capabilities offered by this resource type." }, "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." } }, - "description": "Information from validate template deployment response." + "description": "Resource type managed by the resource provider." }, - "DeploymentExtended": { + "Provider": { "properties": { "id": { "readOnly": true, "type": "string", - "description": "The ID of the deployment." + "description": "The provider ID." }, - "name": { - "readOnly": true, + "namespace": { "type": "string", - "description": "The name of the deployment." + "description": "The namespace of the resource provider." }, - "type": { + "registrationState": { "readOnly": true, "type": "string", - "description": "The type of the deployment." + "description": "The registration state of the resource provider." }, - "location": { + "registrationPolicy": { + "readOnly": true, "type": "string", - "description": "the location of the deployment." + "description": "The registration policy of the resource provider." }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { + "resourceTypes": { + "readOnly": true, "type": "array", "items": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderResourceType" }, - "description": "An array of deployments." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." + "description": "The collection of provider resource types." } }, - "description": "List of deployments." + "description": "Resource provider information." }, "ProviderListResult": { "properties": { @@ -4966,119 +2293,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code." - }, - "statusMessage": { - "readOnly": true, - "type": "object", - "description": "Operation status message." - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -5206,179 +2420,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, - "WhatIfPropertyChange": { - "required": [ - "path", - "propertyChangeType" - ], - "properties": { - "path": { - "type": "string", - "description": "The path of the property." - }, - "propertyChangeType": { - "type": "string", - "description": "The type of property change.", - "enum": [ - "Create", - "Delete", - "Modify", - "Array" - ], - "x-ms-enum": { - "name": "PropertyChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." - }, - { - "value": "Modify", - "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." - }, - { - "value": "Array", - "description": "The property is an array and contains nested changes." - } - ] - } - }, - "before": { - "type": "object", - "description": "The value of the property before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The value of the property after the deployment is executed." - }, - "children": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "description": "Nested property changes." - } - }, - "description": "The predicted change to the resource property." - }, - "WhatIfChange": { - "description": "Information about a single resource change predicted by What-If operation.", - "required": [ - "resourceId", - "changeType" - ], - "properties": { - "resourceId": { - "type": "string", - "description": "Resource ID" - }, - "changeType": { - "type": "string", - "description": "Type of change that will be made to the resource when the deployment is executed.", - "enum": [ - "Create", - "Delete", - "Ignore", - "Deploy", - "NoChange", - "Modify" - ], - "x-ms-enum": { - "name": "ChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." - }, - { - "value": "Ignore", - "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." - }, - { - "value": "Deploy", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." - }, - { - "value": "NoChange", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." - }, - { - "value": "Modify", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." - } - ] - } - }, - "before": { - "type": "object", - "description": "The snapshot of the resource before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The predicted snapshot of the resource after the deployment is executed." - }, - "delta": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "description": "The predicted changes to resource properties." - } - } - }, - "WhatIfOperationProperties": { - "description": "Deployment operation properties.", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "description": "List of resource changes predicted by What-If operation." - } - } - }, - "WhatIfOperationResult": { - "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", - "properties": { - "status": { - "type": "string", - "description": "Status of the What-If operation." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/WhatIfOperationProperties", - "description": "What-If operation properties." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error when What-If operation fails." - } - } - }, "ZoneMapping": { "properties": { "location": { @@ -5395,24 +2436,6 @@ } }, "parameters": { - "ScopeParameter": { - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of a deployment.", - "x-ms-parameter-location": "method" - }, - "GroupIdParameter": { - "name": "groupId", - "in": "path", - "required": true, - "type": "string", - "description": "The management group ID.", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 90 - }, "SubscriptionIdParameter": { "name": "subscriptionId", "in": "path", @@ -5420,17 +2443,6 @@ "type": "string", "description": "The ID of the target subscription." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json index 1929aa7fc5c2..4af9bfea8be0 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json @@ -65,64 +65,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", + "200": { + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/CloudError" + "$ref": "#/definitions/Provider" } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -131,45 +101,35 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtScope", - "summary": "Deploys resources at a given scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider to register." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } }, "default": { @@ -178,36 +138,44 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at a given scope.": { - "$ref": "./examples/PutDeploymentAtScope.json" - } } - }, + } + }, + "/subscriptions/{subscriptionId}/providers": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtScope", - "description": "Gets a deployment.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all deployments." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -216,31 +184,45 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all providers." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -248,47 +230,46 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtScope", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -300,19 +281,27 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -320,9 +309,9 @@ ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -334,23 +323,37 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtScope", - "description": "Get all the deployments at the given scope.", + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -358,17 +361,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resources", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -381,53 +387,32 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { + "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_DeleteAtTenantScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtTenantScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -447,39 +432,53 @@ }, "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdateAtTenantScope", - "summary": "Deploys resources at tenant scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -488,34 +487,39 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at tenant scope.": { - "$ref": "./examples/PutDeploymentAtTenant.json" - } } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtTenantScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "description": "OK" + }, + "202": { + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -523,28 +527,39 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtTenantScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -553,43 +568,46 @@ } } } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtTenantScope", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -601,51 +619,78 @@ } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ExportTemplateAtTenantScope", - "description": "Exports the template used for specified deployment.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExportTemplateRequest" + }, + "description": "Parameters for exporting the template." } ], + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" + }, + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + } + }, "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/ResourceGroupExportResult" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" } } }, - "/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtTenantScope", - "description": "Get all the deployments at the tenant scope.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -653,17 +698,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } }, "default": { @@ -676,31 +724,47 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" @@ -713,77 +777,102 @@ } }, "x-ms-long-running-operation": true - }, - "head": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to validate for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - }, - "put": { + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resources": { + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Additional parameters supplied to the operation." + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -793,69 +882,79 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, - "get": { + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "204": { "description": "No Content" }, + "404": { + "description": "Not Found" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -863,47 +962,75 @@ } } } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "name": "parameters", - "in": "body", + "name": "resourceName", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The name of the resource to delete." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "description": "OK" }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -911,118 +1038,92 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to create." }, { - "name": "$filter", + "name": "api-version", "in": "query", - "required": false, + "required": true, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/GenericResource" } }, - "default": { - "description": "Error response describing why the operation failed.", + "201": { + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/CloudError" + "$ref": "#/definitions/GenericResource" } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -1033,60 +1134,69 @@ }, "x-ms-long-running-operation": true }, - "head": { + "patch": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "404": { - "description": "Not Found" + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Deployment" + "$ref": "#/definitions/GenericResource" }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "Parameters for updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1094,16 +1204,13 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/GenericResource" } }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "202": { + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -1116,16 +1223,58 @@ }, "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -1133,9 +1282,9 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -1147,29 +1296,38 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/{resourceId}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "204": { "description": "No Content" }, + "404": { + "description": "Not Found" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -1177,47 +1335,40 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceId", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "description": "OK" }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -1225,56 +1376,58 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_WhatIfAtSubscriptionScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/DeploymentWhatIf" + "$ref": "#/definitions/GenericResource" }, - "description": "Parameters to What If." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns What-If operation status", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/WhatIfOperationResult" + "$ref": "#/definitions/GenericResource" } }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -1282,86 +1435,89 @@ } } }, - "x-ms-examples": { - "Predict template changes at subscription scope": { - "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "name": "$filter", - "in": "query", - "required": false, + "name": "resourceId", + "in": "path", + "required": true, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -1370,77 +1526,30 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { "delete": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Tags_DeleteValue", + "description": "Deletes a tag value.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "description": "The name of the tag." }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ { - "name": "resourceGroupName", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1450,12 +1559,12 @@ } ], "responses": { + "200": { + "description": "OK" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -1466,33 +1575,24 @@ }, "put": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Tags_CreateOrUpdateValue", + "description": "Creates a tag value. The name of the tag must already exist.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "description": "The name of the tag." }, { - "name": "parameters", - "in": "body", + "name": "tagValue", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1503,15 +1603,15 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the tag value.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/TagValue" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the tag value.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/TagValue" } }, "default": { @@ -1520,36 +1620,24 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { + } + } + }, + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a tag in the subscription.", + "description": "The tag name can have a maximum of 512 characters and is case insensitive. Tag names created by Azure have prefixes of microsoft, azure, or windows. You cannot create tags with one of these prefixes.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1560,9 +1648,15 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the tag.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Created - Returns information about the tag.", + "schema": { + "$ref": "#/definitions/TagDetails" } }, "default": { @@ -1572,29 +1666,21 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", + "operationId": "Tags_Delete", + "summary": "Deletes a tag from the subscription.", + "description": "You must remove all values from a resource tag before you can delete it.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1604,6 +1690,9 @@ } ], "responses": { + "200": { + "description": "OK" + }, "204": { "description": "No Content" }, @@ -1616,36 +1705,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Validate", - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Tags_List", + "description": "Gets the names and values of all resource tags that are defined in a subscription.", "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -1655,15 +1722,9 @@ ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/TagsListResult" } }, "default": { @@ -1672,2562 +1733,43 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } + } + }, + "definitions": { + "GenericResourceFilter": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." + }, + "tagname": { + "type": "string", + "description": "The tag name." + }, + "tagvalue": { + "type": "string", + "description": "The tag value." + } + }, + "description": "Resource filter." }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIf", - "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at resource group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all deployments." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all providers." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "200": { - "description": "OK" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to validate for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "No Content" - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to create." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Update", - "description": "Updates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to update.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to update." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Get", - "description": "Gets a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{resourceId}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "No Content" - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "description": "Deletes a tag value.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "name": "tagValue", - "in": "path", - "required": true, - "type": "string", - "description": "The value of the tag to delete." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdateValue", - "description": "Creates a tag value. The name of the tag must already exist.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "name": "tagValue", - "in": "path", - "required": true, - "type": "string", - "description": "The value of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Created - Returns information about the tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a tag in the subscription.", - "description": "The tag name can have a maximum of 512 characters and is case insensitive. Tag names created by Azure have prefixes of microsoft, azure, or windows. You cannot create tags with one of these prefixes.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the tag.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - }, - "201": { - "description": "Created - Returns information about the tag.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_Delete", - "summary": "Deletes a tag from the subscription.", - "description": "You must remove all values from a resource tag before you can delete it.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "description": "Gets the names and values of all resource tags that are defined in a subscription.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of tag names and values.", - "schema": { - "$ref": "#/definitions/TagsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtTenantScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtTenantScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." - } - ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the hash.", - "schema": { - "$ref": "#/definitions/TemplateHashResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - }, - "description": "The debug setting." - }, - "Deployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "ScopedDeployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "DeploymentWhatIf": { + "ResourceGroupFilter": { "properties": { - "location": { + "tagName": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "DeploymentWhatIfProperties": { - "properties": { - "whatIfSettings": { - "$ref": "#/definitions/DeploymentWhatIfSettings", - "description": "Optional What-If operation settings." - } - }, - "allOf": [ - { - "$ref": "#/definitions/DeploymentProperties" - } - ], - "description": "Deployment What-if properties." - }, - "DeploymentWhatIfSettings": { - "properties": { - "resultFormat": { + "tagValue": { "type": "string", - "description": "The format of the What-If results", - "enum": [ - "ResourceIdOnly", - "FullResourcePayloads" - ], - "x-ms-enum": { - "name": "WhatIfResultFormat", - "modelAsString": false - } + "description": "The tag value." } }, - "description": "Deployment What-If operation settings." + "description": "Resource group filter." }, "CloudError": { "x-ms-external": true, @@ -4256,331 +1798,99 @@ }, "AliasType": { "properties": { - "name": { - "type": "string", - "description": "The alias name." - }, - "paths": { - "type": "array", - "items": { - "$ref": "#/definitions/AliasPathType" - }, - "description": "The paths for an alias." - } - }, - "description": "The alias type. " - }, - "ProviderResourceType": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "locations": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The collection of locations where this resource type can be created." - }, - "aliases": { - "type": "array", - "items": { - "$ref": "#/definitions/AliasType" - }, - "description": "The aliases that are supported by this resource type." - }, - "apiVersions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The API version." - }, - "zoneMappings": { - "type": "array", - "items": { - "$ref": "#/definitions/ZoneMapping" - } - }, - "capabilities": { - "type": "string", - "description": "The additional capabilities offered by this resource type." - }, - "properties": { - "type": "object", - "additionalProperties": { - "type": "string", - "description": "The additional properties. " - }, - "description": "The properties." - } - }, - "description": "Resource type managed by the resource provider." - }, - "Provider": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The provider ID." - }, - "namespace": { - "type": "string", - "description": "The namespace of the resource provider." - }, - "registrationState": { - "readOnly": true, - "type": "string", - "description": "The registration state of the resource provider." - }, - "registrationPolicy": { - "readOnly": true, - "type": "string", - "description": "The registration policy of the resource provider." - }, - "resourceTypes": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/ProviderResourceType" - }, - "description": "The collection of provider resource types." - } - }, - "description": "Resource provider information." - }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "template": { - "type": "object", - "description": "The template content. Use only one of Template or TemplateLink." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template. Use only one of Template or TemplateLink." - }, - "parameters": { - "type": "object", - "description": "Deployment parameters. Use only one of Parameters or ParametersLink." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." - }, - "mode": { - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "OnErrorDeployment": { - "properties": { - "type": { + "name": { "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } + "description": "The alias name." }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." + "paths": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasPathType" + }, + "description": "The paths for an alias." } }, - "description": "Deployment on error behavior." + "description": "The alias type. " }, - "OnErrorDeploymentExtended": { + "ProviderResourceType": { "properties": { - "provisioningState": { - "readOnly": true, + "resourceType": { "type": "string", - "description": "The state of the provisioning for the on error deployment." + "description": "The resource type." }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/AliasType" + }, + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." + }, + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" } }, - "deploymentName": { + "capabilities": { "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment validation error." + "description": "The additional capabilities offered by this resource type." }, "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." } }, - "description": "Information from validate template deployment response." + "description": "Resource type managed by the resource provider." }, - "DeploymentExtended": { + "Provider": { "properties": { "id": { "readOnly": true, "type": "string", - "description": "The ID of the deployment." + "description": "The provider ID." }, - "name": { - "readOnly": true, + "namespace": { "type": "string", - "description": "The name of the deployment." + "description": "The namespace of the resource provider." }, - "type": { + "registrationState": { "readOnly": true, "type": "string", - "description": "The type of the deployment." + "description": "The registration state of the resource provider." }, - "location": { + "registrationPolicy": { + "readOnly": true, "type": "string", - "description": "the location of the deployment." + "description": "The registration policy of the resource provider." }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { + "resourceTypes": { + "readOnly": true, "type": "array", "items": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderResourceType" }, - "description": "An array of deployments." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." + "description": "The collection of provider resource types." } }, - "description": "List of deployments." + "description": "Resource provider information." }, "ProviderListResult": { "properties": { @@ -4983,119 +2293,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code." - }, - "statusMessage": { - "readOnly": true, - "type": "object", - "description": "Operation status message." - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -5223,179 +2420,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, - "WhatIfPropertyChange": { - "required": [ - "path", - "propertyChangeType" - ], - "properties": { - "path": { - "type": "string", - "description": "The path of the property." - }, - "propertyChangeType": { - "type": "string", - "description": "The type of property change.", - "enum": [ - "Create", - "Delete", - "Modify", - "Array" - ], - "x-ms-enum": { - "name": "PropertyChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." - }, - { - "value": "Modify", - "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." - }, - { - "value": "Array", - "description": "The property is an array and contains nested changes." - } - ] - } - }, - "before": { - "type": "object", - "description": "The value of the property before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The value of the property after the deployment is executed." - }, - "children": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "description": "Nested property changes." - } - }, - "description": "The predicted change to the resource property." - }, - "WhatIfChange": { - "description": "Information about a single resource change predicted by What-If operation.", - "required": [ - "resourceId", - "changeType" - ], - "properties": { - "resourceId": { - "type": "string", - "description": "Resource ID" - }, - "changeType": { - "type": "string", - "description": "Type of change that will be made to the resource when the deployment is executed.", - "enum": [ - "Create", - "Delete", - "Ignore", - "Deploy", - "NoChange", - "Modify" - ], - "x-ms-enum": { - "name": "ChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." - }, - { - "value": "Ignore", - "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." - }, - { - "value": "Deploy", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." - }, - { - "value": "NoChange", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." - }, - { - "value": "Modify", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." - } - ] - } - }, - "before": { - "type": "object", - "description": "The snapshot of the resource before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The predicted snapshot of the resource after the deployment is executed." - }, - "delta": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "description": "The predicted changes to resource properties." - } - } - }, - "WhatIfOperationProperties": { - "description": "Deployment operation properties.", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "description": "List of resource changes predicted by What-If operation." - } - } - }, - "WhatIfOperationResult": { - "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", - "properties": { - "status": { - "type": "string", - "description": "Status of the What-If operation." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/WhatIfOperationProperties", - "description": "What-If operation properties." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error when What-If operation fails." - } - } - }, "ZoneMapping": { "properties": { "location": { @@ -5412,24 +2436,6 @@ } }, "parameters": { - "ScopeParameter": { - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "The scope of a deployment.", - "x-ms-parameter-location": "method" - }, - "GroupIdParameter": { - "name": "groupId", - "in": "path", - "required": true, - "type": "string", - "description": "The management group ID.", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 90 - }, "SubscriptionIdParameter": { "name": "subscriptionId", "in": "path", @@ -5437,17 +2443,6 @@ "type": "string", "description": "The ID of the target subscription." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json index 8d7cd9bbe5bf..3b5a73fa32a7 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json @@ -65,64 +65,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", + "200": { + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/CloudError" + "$ref": "#/definitions/Provider" } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -131,45 +101,35 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtScope", - "summary": "Deploys resources at a given scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider to register." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } }, "default": { @@ -178,36 +138,44 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at a given scope.": { - "$ref": "./examples/PutDeploymentAtScope.json" - } } - }, + } + }, + "/subscriptions/{subscriptionId}/providers": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtScope", - "description": "Gets a deployment.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all deployments." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -216,31 +184,45 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all providers." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -248,51 +230,46 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -304,19 +281,27 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -324,9 +309,9 @@ ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -338,23 +323,37 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtScope", - "description": "Get all the deployments at the given scope.", + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -362,17 +361,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resources", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -385,105 +387,98 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { + "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_DeleteAtTenantScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, "204": { "description": "No Content" }, + "404": { + "description": "Not Found" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true + } }, - "head": { + "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistenceAtTenantScope", - "description": "Checks whether the deployment exists.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtTenantScope", - "summary": "Deploys resources at tenant scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -492,34 +487,39 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at tenant scope.": { - "$ref": "./examples/PutDeploymentAtTenant.json" - } } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtTenantScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "description": "OK" + }, + "202": { + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -527,28 +527,39 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtTenantScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -557,47 +568,46 @@ } } } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtTenantScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -609,49 +619,50 @@ } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_WhatIfAtTenantScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/ExportTemplateRequest" }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "Parameters for exporting the template." } ], + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" + }, + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + } + }, "responses": { "200": { - "description": "OK - Returns What-If operation status", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/WhatIfOperationResult" + "$ref": "#/definitions/ResourceGroupExportResult" } }, "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -660,62 +671,26 @@ } } }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" - } - }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { "final-state-via": "location" } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtTenantScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtTenantScope", - "description": "Get all the deployments at the tenant scope.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -723,17 +698,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } }, "default": { @@ -746,31 +724,47 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" @@ -783,2371 +777,50 @@ } }, "x-ms-long-running-operation": true - }, - "head": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to validate for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtManagementGroupScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtSubscriptionScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to What If." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at subscription scope": { - "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIf", - "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at resource group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all deployments." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all providers." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to validate for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to create." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Update", - "description": "Updates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to update.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to update." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3156,61 +829,40 @@ } }, "x-ms-long-running-operation": true - }, + } + }, + "/subscriptions/{subscriptionId}/resources": { "get": { "tags": [ "Resources" ], - "operationId": "Resources_Get", - "description": "Gets a resource.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, + "name": "$filter", + "in": "query", + "required": false, "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." }, { - "name": "resourceType", - "in": "path", - "required": true, + "name": "$expand", + "in": "query", + "required": false, "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." }, { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false + "$ref": "#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3218,9 +870,9 @@ ], "responses": { "200": { - "description": "OK - Returns information about the resource.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/GenericResource" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -3229,164 +881,60 @@ "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/{resourceId}": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { "head": { "tags": [ "Resources" ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { - "name": "resourceId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "name": "api-version", - "in": "query", + "name": "resourceProviderNamespace", + "in": "path", "required": true, "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "description": "The resource provider of the resource to check." }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ { - "name": "resourceId", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "description": "The parent resource identity.", "x-ms-skip-url-encoding": true }, { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "description": "The resource type.", "x-ms-skip-url-encoding": true }, { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ - { - "name": "resourceId", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource to check whether it exists." }, { "name": "api-version", @@ -3397,24 +945,15 @@ "x-ms-api-version": false }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Update resource parameters." + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } + "204": { + "description": "No Content" }, - "202": { - "description": "Accepted" + "404": { + "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -3422,74 +961,62 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true + } }, - "get": { + "delete": { "tags": [ "Resources" ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { - "name": "resourceId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "name": "api-version", - "in": "query", + "name": "resourceProviderNamespace", + "in": "path", "required": true, "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } + "description": "The namespace of the resource provider." }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "summary": "Deletes a predefined tag value for a predefined tag name.", - "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", - "parameters": [ { - "name": "tagName", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "name": "tagValue", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to delete." + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to delete." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3497,10 +1024,13 @@ ], "responses": { "200": { - "description": "Predefined tag value successfully deleted." + "description": "OK" + }, + "202": { + "description": "Accepted" }, "204": { - "description": "Predefined tag value did not exist." + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3508,77 +1038,72 @@ "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-long-running-operation": true }, "put": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_CreateOrUpdateValue", - "summary": "Creates a predefined value for a predefined tag name.", - "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "name": "tagValue", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to create." + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value already exists. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a predefined tag name.", - "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", - "parameters": [ { - "name": "tagName", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag to create." + "description": "The name of the resource to create." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3586,74 +1111,92 @@ ], "responses": { "200": { - "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagDetails" + "$ref": "#/definitions/GenericResource" } }, "201": { - "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagDetails" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-long-running-operation": true }, - "delete": { + "patch": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_Delete", - "summary": "Deletes a predefined tag name.", - "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name successfully deleted." + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "204": { - "description": "Predefined tag name did not exist." + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "summary": "Gets a summary of tag usage under the subscription.", - "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", - "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3661,11 +1204,14 @@ ], "responses": { "200": { - "description": "OK - Returns an array of tag names and values.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3673,41 +1219,72 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -3719,38 +1296,37 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + "/{resourceId}": { + "head": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -3758,40 +1334,41 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtTenantScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "resourceId", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3799,39 +1376,58 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtTenantScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3839,83 +1435,89 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", - "in": "path", + "name": "api-version", + "in": "query", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -3924,29 +1526,31 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", + "operationId": "Tags_DeleteValue", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "operationId", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -3957,10 +1561,10 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "Predefined tag value successfully deleted." + }, + "204": { + "description": "Predefined tag value did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -3969,26 +1573,28 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_CreateOrUpdateValue", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -3999,9 +1605,15 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "Predefined tag value already exists. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/TagValue" } }, "default": { @@ -4010,39 +1622,24 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4053,9 +1650,15 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" } }, "default": { @@ -4065,36 +1668,21 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_Delete", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4105,10 +1693,10 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "description": "Predefined tag name successfully deleted." + }, + "204": { + "description": "Predefined tag name did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4116,43 +1704,30 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/TemplateHashResult" + "$ref": "#/definitions/TagsListResult" } }, "default": { @@ -4161,6 +1736,9 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -4309,255 +1887,41 @@ "schema": { "$ref": "#/definitions/CloudError" } - } - } - } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - }, - "description": "The debug setting." - }, - "Deployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" + } } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "ScopedDeployment": { + } + } + }, + "definitions": { + "GenericResourceFilter": { "properties": { - "location": { + "resourceType": { "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." + "description": "The resource type." }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "DeploymentWhatIf": { - "properties": { - "location": { + "tagname": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." + "tagvalue": { + "type": "string", + "description": "The tag value." } }, - "required": [ - "properties" - ], - "description": "Deployment What-if operation parameters." + "description": "Resource filter." }, - "ScopedDeploymentWhatIf": { + "ResourceGroupFilter": { "properties": { - "location": { + "tagName": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "DeploymentWhatIfProperties": { - "properties": { - "whatIfSettings": { - "$ref": "#/definitions/DeploymentWhatIfSettings", - "description": "Optional What-If operation settings." - } - }, - "allOf": [ - { - "$ref": "#/definitions/DeploymentProperties" - } - ], - "description": "Deployment What-if properties." - }, - "DeploymentWhatIfSettings": { - "properties": { - "resultFormat": { + "tagValue": { "type": "string", - "description": "The format of the What-If results", - "enum": [ - "ResourceIdOnly", - "FullResourcePayloads" - ], - "x-ms-enum": { - "name": "WhatIfResultFormat", - "modelAsString": false - } + "description": "The tag value." } }, - "description": "Deployment What-If operation settings." + "description": "Resource group filter." }, "CloudError": { "x-ms-external": true, @@ -4707,330 +2071,52 @@ "$ref": "#/definitions/ZoneMapping" } }, - "capabilities": { - "type": "string", - "description": "The additional capabilities offered by this resource type." - }, - "properties": { - "type": "object", - "additionalProperties": { - "type": "string", - "description": "The additional properties. " - }, - "description": "The properties." - } - }, - "description": "Resource type managed by the resource provider." - }, - "Provider": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The provider ID." - }, - "namespace": { - "type": "string", - "description": "The namespace of the resource provider." - }, - "registrationState": { - "readOnly": true, - "type": "string", - "description": "The registration state of the resource provider." - }, - "registrationPolicy": { - "readOnly": true, - "type": "string", - "description": "The registration policy of the resource provider." - }, - "resourceTypes": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/ProviderResourceType" - }, - "description": "The collection of provider resource types." - } - }, - "description": "Resource provider information." - }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "readOnly": true, - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "templateLink": { - "readOnly": true, - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template." - }, - "parameters": { - "readOnly": true, - "type": "object", - "description": "Deployment parameters. " - }, - "parametersLink": { - "readOnly": true, - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. " - }, - "mode": { - "readOnly": true, - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "readOnly": true, - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "readOnly": true, - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "templateHash": { - "readOnly": true, - "type": "string", - "description": "The hash produced for the template." - }, - "outputResources": { - "readOnly": true, - "type": "array", - "description": "Array of provisioned resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of provisioned resources." - } - }, - "validatedResources": { - "readOnly": true, - "type": "array", - "description": "Array of validated resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of validated resources." - } - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "ResourceReference": { - "description": "The resource Id model.", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The fully qualified resource Id." - } - } - }, - "OnErrorDeployment": { - "properties": { - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior." - }, - "OnErrorDeploymentExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning for the on error deployment." - }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment validation error." - }, + "capabilities": { + "type": "string", + "description": "The additional capabilities offered by this resource type." + }, "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." } }, - "description": "Information from validate template deployment response." + "description": "Resource type managed by the resource provider." }, - "DeploymentExtended": { + "Provider": { "properties": { "id": { "readOnly": true, "type": "string", - "description": "The ID of the deployment." + "description": "The provider ID." }, - "name": { - "readOnly": true, + "namespace": { "type": "string", - "description": "The name of the deployment." + "description": "The namespace of the resource provider." }, - "type": { + "registrationState": { "readOnly": true, "type": "string", - "description": "The type of the deployment." + "description": "The registration state of the resource provider." }, - "location": { + "registrationPolicy": { + "readOnly": true, "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." + "description": "The registration policy of the resource provider." }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { + "resourceTypes": { + "readOnly": true, "type": "array", "items": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderResourceType" }, - "description": "An array of deployments." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." + "description": "The collection of provider resource types." } }, - "description": "List of deployments." + "description": "Resource provider information." }, "ProviderListResult": { "properties": { @@ -5435,182 +2521,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningOperation": { - "readOnly": true, - "type": "string", - "description": "The name of the current provisioning operation.", - "enum": [ - "NotSpecified", - "Create", - "Delete", - "Waiting", - "AzureAsyncOperationWaiting", - "ResourceCacheWaiting", - "Action", - "Read", - "EvaluateDeploymentOutput", - "DeploymentCleanup" - ], - "x-ms-enum": { - "name": "ProvisioningOperation", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "The provisioning operation is not specified." - }, - { - "value": "Create", - "description": "The provisioning operation is create." - }, - { - "value": "Delete", - "description": "The provisioning operation is delete." - }, - { - "value": "Waiting", - "description": "The provisioning operation is waiting." - }, - { - "value": "AzureAsyncOperationWaiting", - "description": "The provisioning operation is waiting Azure async operation." - }, - { - "value": "ResourceCacheWaiting", - "description": "The provisioning operation is waiting for resource cache." - }, - { - "value": "Action", - "description": "The provisioning operation is action." - }, - { - "value": "Read", - "description": "The provisioning operation is read." - }, - { - "value": "EvaluateDeploymentOutput", - "description": "The provisioning operation is evaluate output." - }, - { - "value": "DeploymentCleanup", - "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." - } - ] - } - }, - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code." - }, - "statusMessage": { - "readOnly": true, - "type": "object", - "description": "Operation status message." - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -5738,179 +2648,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, - "WhatIfPropertyChange": { - "required": [ - "path", - "propertyChangeType" - ], - "properties": { - "path": { - "type": "string", - "description": "The path of the property." - }, - "propertyChangeType": { - "type": "string", - "description": "The type of property change.", - "enum": [ - "Create", - "Delete", - "Modify", - "Array" - ], - "x-ms-enum": { - "name": "PropertyChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." - }, - { - "value": "Modify", - "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." - }, - { - "value": "Array", - "description": "The property is an array and contains nested changes." - } - ] - } - }, - "before": { - "type": "object", - "description": "The value of the property before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The value of the property after the deployment is executed." - }, - "children": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "description": "Nested property changes." - } - }, - "description": "The predicted change to the resource property." - }, - "WhatIfChange": { - "description": "Information about a single resource change predicted by What-If operation.", - "required": [ - "resourceId", - "changeType" - ], - "properties": { - "resourceId": { - "type": "string", - "description": "Resource ID" - }, - "changeType": { - "type": "string", - "description": "Type of change that will be made to the resource when the deployment is executed.", - "enum": [ - "Create", - "Delete", - "Ignore", - "Deploy", - "NoChange", - "Modify" - ], - "x-ms-enum": { - "name": "ChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." - }, - { - "value": "Ignore", - "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." - }, - { - "value": "Deploy", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." - }, - { - "value": "NoChange", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." - }, - { - "value": "Modify", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." - } - ] - } - }, - "before": { - "type": "object", - "description": "The snapshot of the resource before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The predicted snapshot of the resource after the deployment is executed." - }, - "delta": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "description": "The predicted changes to resource properties." - } - } - }, - "WhatIfOperationProperties": { - "description": "Deployment operation properties.", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "description": "List of resource changes predicted by What-If operation." - } - } - }, - "WhatIfOperationResult": { - "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", - "properties": { - "status": { - "type": "string", - "description": "Status of the What-If operation." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/WhatIfOperationProperties", - "description": "What-If operation properties." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error when What-If operation fails." - } - } - }, "Tags": { "description": "A dictionary of name and value pairs.", "properties": { @@ -6014,16 +2751,6 @@ "x-ms-parameter-location": "method", "x-ms-skip-url-encoding": true }, - "GroupIdParameter": { - "name": "groupId", - "in": "path", - "required": true, - "type": "string", - "description": "The management group ID.", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 90 - }, "SubscriptionIdParameter": { "name": "subscriptionId", "in": "path", @@ -6031,17 +2758,6 @@ "type": "string", "description": "The ID of the target subscription." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/resources.json index 96ed5637d6f8..dd5f843a1ace 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-06-01/resources.json @@ -65,31 +65,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -97,32 +100,34 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true - }, - "head": { + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CheckExistenceAtScope", - "description": "Checks whether the deployment exists.", + "operationId": "Providers_RegisterAtManagementGroupScope", + "description": "Registers a management group with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/GroupIdParameter" } ], "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "200": { + "description": "OK - Returns information about the resource provider." }, "default": { "description": "Error response describing why the operation failed.", @@ -131,45 +136,35 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtScope", - "summary": "Deploys resources at a given scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider to register." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } }, "default": { @@ -178,36 +173,44 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at a given scope.": { - "$ref": "./examples/PutDeploymentAtScope.json" - } } - }, + } + }, + "/subscriptions/{subscriptionId}/providers": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtScope", - "description": "Gets a deployment.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all deployments." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -216,31 +219,45 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all providers." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -248,51 +265,46 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -304,19 +316,32 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtScope", - "description": "Exports the template used for specified deployment.", + "x-ms-examples": { + "Get a resource provider at tenant scope": { + "$ref": "./examples/GetNamedProviderAtTenant.json" + } + }, + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -324,9 +349,9 @@ ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -338,23 +363,36 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtScope", - "description": "Get all the deployments at the given scope.", + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "minLength": 1, + "maxLength": 90 }, { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -362,17 +400,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resources", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -385,105 +426,96 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { + "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_DeleteAtTenantScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, "204": { "description": "No Content" }, + "404": { + "description": "Not Found" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true + } }, - "head": { + "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistenceAtTenantScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtTenantScope", - "summary": "Deploys resources at tenant scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -492,34 +524,53 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at tenant scope.": { - "$ref": "./examples/PutDeploymentAtTenant.json" - } } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtTenantScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "forceDeletionTypes", + "in": "query", + "required": false, + "type": "string", + "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], + "x-ms-examples": { + "Force delete all the Virtual Machines in a resource group": { + "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" + }, + "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { + "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" + } + }, "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "description": "OK" + }, + "202": { + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -527,28 +578,38 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtTenantScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -557,47 +618,45 @@ } } } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtTenantScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -609,49 +668,50 @@ } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_WhatIfAtTenantScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/ExportTemplateRequest" }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "Parameters for exporting the template." } ], + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" + }, + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + } + }, "responses": { "200": { - "description": "OK - Returns What-If operation status", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/WhatIfOperationResult" + "$ref": "#/definitions/ResourceGroupExportResult" } }, "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -660,62 +720,26 @@ } } }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" - } - }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { "final-state-via": "location" } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtTenantScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtTenantScope", - "description": "Get all the deployments at the tenant scope.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -723,17 +747,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } }, "default": { @@ -746,31 +773,46 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to move.", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" @@ -783,146 +825,46 @@ } }, "x-ms-long-running-operation": true - }, - "head": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to validate for move.", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourcesMoveInfo" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "202": { + "description": "Accepted" }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { "204": { "description": "No Content" }, @@ -932,178 +874,31 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtManagementGroupScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" - } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } + "x-ms-long-running-operation": true } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resources": { "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." }, { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -1111,17 +906,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -1134,2353 +932,56 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtSubscriptionScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to What If." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at subscription scope": { - "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - }, - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIf", - "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at resource group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_RegisterAtManagementGroupScope", - "description": "Registers a management group with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/GroupIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all deployments." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all providers." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "x-ms-examples": { - "Get a resource provider at tenant scope": { - "$ref": "./examples/GetNamedProviderAtTenant.json" - } - }, - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "forceDeletionTypes", - "in": "query", - "required": false, - "type": "string", - "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "x-ms-examples": { - "Force delete all the Virtual Machines in a resource group": { - "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" - }, - "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { - "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" - } - }, - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to move.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to validate for move.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to create." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Update", - "description": "Updates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to update.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to update." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Get", - "description": "Gets a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{resourceId}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", - "parameters": [ + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." + }, { - "name": "resourceId", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", "x-ms-skip-url-encoding": true }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." + }, { "name": "api-version", "in": "query", @@ -3488,14 +989,17 @@ "type": "string", "description": "The API version to use for the operation.", "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -3504,33 +1008,60 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + }, "delete": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_DeleteValue", - "summary": "Deletes a predefined tag value for a predefined tag name.", - "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { - "name": "tagValue", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to delete." + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to delete." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3538,10 +1069,13 @@ ], "responses": { "200": { - "description": "Predefined tag value successfully deleted." + "description": "OK" + }, + "202": { + "description": "Accepted" }, "204": { - "description": "Predefined tag value did not exist." + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3549,77 +1083,71 @@ "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-long-running-operation": true }, "put": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_CreateOrUpdateValue", - "summary": "Creates a predefined value for a predefined tag name.", - "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { - "name": "tagValue", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to create." + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value already exists. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a predefined tag name.", - "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", - "parameters": [ { - "name": "tagName", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag to create." + "description": "The name of the resource to create." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3627,74 +1155,91 @@ ], "responses": { "200": { - "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagDetails" + "$ref": "#/definitions/GenericResource" } }, "201": { - "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagDetails" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-long-running-operation": true }, - "delete": { + "patch": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_Delete", - "summary": "Deletes a predefined tag name.", - "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name successfully deleted." + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "204": { - "description": "Predefined tag name did not exist." + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "summary": "Gets a summary of tag usage under the subscription.", - "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", - "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3702,11 +1247,14 @@ ], "responses": { "200": { - "description": "OK - Returns an array of tag names and values.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3714,41 +1262,71 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "name": "operationId", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -3760,38 +1338,37 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + "/{resourceId}": { + "head": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -3799,40 +1376,41 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtTenantScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "resourceId", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3840,39 +1418,58 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtTenantScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3880,83 +1477,89 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", - "in": "path", + "name": "api-version", + "in": "query", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -3965,29 +1568,31 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", + "operationId": "Tags_DeleteValue", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "operationId", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -3998,10 +1603,10 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "Predefined tag value successfully deleted." + }, + "204": { + "description": "Predefined tag value did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4010,26 +1615,28 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_CreateOrUpdateValue", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4040,9 +1647,15 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "Predefined tag value already exists. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/TagValue" } }, "default": { @@ -4051,38 +1664,24 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4093,9 +1692,15 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" } }, "default": { @@ -4105,35 +1710,21 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_Delete", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4144,10 +1735,10 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "description": "Predefined tag name successfully deleted." + }, + "204": { + "description": "Predefined tag name did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4155,43 +1746,30 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/TemplateHashResult" + "$ref": "#/definitions/TagsListResult" } }, "default": { @@ -4200,6 +1778,9 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -4341,271 +1922,48 @@ ], "responses": { "200": { - "description": "Tags successfully deleted." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy. Use either the uri or id property, but not both." - }, - "id": { - "type": "string", - "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." - }, - "relativePath": { - "type": "string", - "description": "Applicable only if this template link references a Template Spec. This relativePath property can optionally be used to reference a Template Spec artifact by path." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - }, - "expressionEvaluationOptions": { - "$ref": "#/definitions/ExpressionEvaluationOptions", - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - }, - "description": "The debug setting." - }, - "Deployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" + "description": "Tags successfully deleted." }, - "description": "Deployment tags" + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "ScopedDeployment": { + } + } + }, + "definitions": { + "GenericResourceFilter": { "properties": { - "location": { + "resourceType": { "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." + "description": "The resource type." }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "DeploymentWhatIf": { - "properties": { - "location": { + "tagname": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." + "tagvalue": { + "type": "string", + "description": "The tag value." } }, - "required": [ - "properties" - ], - "description": "Deployment What-if operation parameters." + "description": "Resource filter." }, - "ScopedDeploymentWhatIf": { + "ResourceGroupFilter": { "properties": { - "location": { + "tagName": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "DeploymentWhatIfProperties": { - "properties": { - "whatIfSettings": { - "$ref": "#/definitions/DeploymentWhatIfSettings", - "description": "Optional What-If operation settings." - } - }, - "allOf": [ - { - "$ref": "#/definitions/DeploymentProperties" - } - ], - "description": "Deployment What-if properties." - }, - "DeploymentWhatIfSettings": { - "properties": { - "resultFormat": { + "tagValue": { "type": "string", - "description": "The format of the What-If results", - "enum": [ - "ResourceIdOnly", - "FullResourcePayloads" - ], - "x-ms-enum": { - "name": "WhatIfResultFormat", - "modelAsString": false - } + "description": "The tag value." } }, - "description": "Deployment What-If operation settings." + "description": "Resource group filter." }, "CloudError": { "x-ms-external": true, @@ -4895,326 +2253,30 @@ "type": "string", "description": "The provider ID." }, - "namespace": { - "type": "string", - "description": "The namespace of the resource provider." - }, - "registrationState": { - "readOnly": true, - "type": "string", - "description": "The registration state of the resource provider." - }, - "registrationPolicy": { - "readOnly": true, - "type": "string", - "description": "The registration policy of the resource provider." - }, - "resourceTypes": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/ProviderResourceType" - }, - "description": "The collection of provider resource types." - } - }, - "description": "Resource provider information." - }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "type": "string", - "readOnly": true, - "description": "Denotes the state of provisioning.", - "enum": [ - "NotSpecified", - "Accepted", - "Running", - "Ready", - "Creating", - "Created", - "Deleting", - "Deleted", - "Canceled", - "Failed", - "Succeeded", - "Updating" - ], - "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true - } - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "readOnly": true, - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "templateLink": { - "readOnly": true, - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template." - }, - "parameters": { - "readOnly": true, - "type": "object", - "description": "Deployment parameters. " - }, - "parametersLink": { - "readOnly": true, - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. " - }, - "mode": { - "readOnly": true, - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "readOnly": true, - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "readOnly": true, - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "templateHash": { - "readOnly": true, - "type": "string", - "description": "The hash produced for the template." - }, - "outputResources": { - "readOnly": true, - "type": "array", - "description": "Array of provisioned resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of provisioned resources." - } - }, - "validatedResources": { - "readOnly": true, - "type": "array", - "description": "Array of validated resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of validated resources." - } - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "ResourceReference": { - "description": "The resource Id model.", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The fully qualified resource Id." - } - } - }, - "OnErrorDeployment": { - "properties": { - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior." - }, - "OnErrorDeploymentExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning for the on error deployment." - }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "readOnly": true, + "namespace": { "type": "string", - "description": "The name of the deployment." + "description": "The namespace of the resource provider." }, - "type": { + "registrationState": { "readOnly": true, "type": "string", - "description": "The type of the deployment." + "description": "The registration state of the resource provider." }, - "location": { + "registrationPolicy": { + "readOnly": true, "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." + "description": "The registration policy of the resource provider." }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { + "resourceTypes": { + "readOnly": true, "type": "array", "items": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderResourceType" }, - "description": "An array of deployments." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." + "description": "The collection of provider resource types." } }, - "description": "List of deployments." + "description": "Resource provider information." }, "ProviderListResult": { "properties": { @@ -5618,182 +2680,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningOperation": { - "readOnly": true, - "type": "string", - "description": "The name of the current provisioning operation.", - "enum": [ - "NotSpecified", - "Create", - "Delete", - "Waiting", - "AzureAsyncOperationWaiting", - "ResourceCacheWaiting", - "Action", - "Read", - "EvaluateDeploymentOutput", - "DeploymentCleanup" - ], - "x-ms-enum": { - "name": "ProvisioningOperation", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "The provisioning operation is not specified." - }, - { - "value": "Create", - "description": "The provisioning operation is create." - }, - { - "value": "Delete", - "description": "The provisioning operation is delete." - }, - { - "value": "Waiting", - "description": "The provisioning operation is waiting." - }, - { - "value": "AzureAsyncOperationWaiting", - "description": "The provisioning operation is waiting Azure async operation." - }, - { - "value": "ResourceCacheWaiting", - "description": "The provisioning operation is waiting for resource cache." - }, - { - "value": "Action", - "description": "The provisioning operation is action." - }, - { - "value": "Read", - "description": "The provisioning operation is read." - }, - { - "value": "EvaluateDeploymentOutput", - "description": "The provisioning operation is evaluate output." - }, - { - "value": "DeploymentCleanup", - "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." - } - ] - } - }, - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." - }, - "statusMessage": { - "readOnly": true, - "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", - "$ref": "#/definitions/StatusMessage" - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -5921,179 +2807,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, - "WhatIfPropertyChange": { - "required": [ - "path", - "propertyChangeType" - ], - "properties": { - "path": { - "type": "string", - "description": "The path of the property." - }, - "propertyChangeType": { - "type": "string", - "description": "The type of property change.", - "enum": [ - "Create", - "Delete", - "Modify", - "Array" - ], - "x-ms-enum": { - "name": "PropertyChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." - }, - { - "value": "Modify", - "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." - }, - { - "value": "Array", - "description": "The property is an array and contains nested changes." - } - ] - } - }, - "before": { - "type": "object", - "description": "The value of the property before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The value of the property after the deployment is executed." - }, - "children": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "description": "Nested property changes." - } - }, - "description": "The predicted change to the resource property." - }, - "WhatIfChange": { - "description": "Information about a single resource change predicted by What-If operation.", - "required": [ - "resourceId", - "changeType" - ], - "properties": { - "resourceId": { - "type": "string", - "description": "Resource ID" - }, - "changeType": { - "type": "string", - "description": "Type of change that will be made to the resource when the deployment is executed.", - "enum": [ - "Create", - "Delete", - "Ignore", - "Deploy", - "NoChange", - "Modify" - ], - "x-ms-enum": { - "name": "ChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." - }, - { - "value": "Ignore", - "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." - }, - { - "value": "Deploy", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." - }, - { - "value": "NoChange", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." - }, - { - "value": "Modify", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." - } - ] - } - }, - "before": { - "type": "object", - "description": "The snapshot of the resource before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The predicted snapshot of the resource after the deployment is executed." - }, - "delta": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "description": "The predicted changes to resource properties." - } - } - }, - "WhatIfOperationProperties": { - "description": "Deployment operation properties.", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "description": "List of resource changes predicted by What-If operation." - } - } - }, - "WhatIfOperationResult": { - "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", - "properties": { - "status": { - "type": "string", - "description": "Status of the What-If operation." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/WhatIfOperationProperties", - "description": "What-If operation properties." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error when What-If operation fails." - } - } - }, "Tags": { "description": "A dictionary of name and value pairs.", "properties": { @@ -6172,38 +2885,6 @@ }, "x-ms-azure-resource": true }, - "StatusMessage": { - "type": "object", - "description": "Operation status message object.", - "properties": { - "status": { - "type": "string", - "description": "Status of the deployment operation." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The error reported by the operation." - } - } - }, - "ExpressionEvaluationOptions": { - "properties": { - "scope": { - "type": "string", - "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", - "enum": [ - "NotSpecified", - "Outer", - "Inner" - ], - "x-ms-enum": { - "name": "ExpressionEvaluationOptionsScopeType", - "modelAsString": true - } - } - }, - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." - }, "ZoneMapping": { "properties": { "location": { @@ -6246,16 +2927,6 @@ "type": "string", "description": "The ID of the target subscription." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/resources.json index f871f6f7ef7f..1b0f5095a41b 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-08-01/resources.json @@ -65,31 +65,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -97,32 +100,37 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true - }, - "head": { + } + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CheckExistenceAtScope", - "description": "Checks whether the deployment exists.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -131,45 +139,43 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtScope", - "summary": "Deploys resources at a given scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all deployments." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -179,25 +185,38 @@ } } }, - "x-ms-long-running-operation": true, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { - "Create deployment at a given scope.": { - "$ref": "./examples/PutDeploymentAtScope.json" + "Get providers.": { + "$ref": "./examples/GetProviders.json" } } - }, + } + }, + "/providers": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtScope", - "description": "Gets a deployment.", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all providers." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -205,9 +224,9 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -216,31 +235,47 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -248,51 +283,48 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get provider.": { + "$ref": "./examples/GetProvider.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ProviderResourceTypes_List", + "description": "List the resource types for a specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns resource types information for the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ProviderResourceTypeListResult" } }, "default": { @@ -301,22 +333,40 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get provider resource types.": { + "$ref": "./examples/GetProviderResourceTypes.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtScope", - "description": "Exports the template used for specified deployment.", + "x-ms-examples": { + "Get a resource provider at tenant scope": { + "$ref": "./examples/GetNamedProviderAtTenant.json" + } + }, + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -324,9 +374,9 @@ ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -338,23 +388,36 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtScope", - "description": "Get all the deployments at the given scope.", + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "minLength": 1, + "maxLength": 90 }, { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -362,17 +425,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resources", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -385,53 +451,31 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { + "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_DeleteAtTenantScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtTenantScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -451,39 +495,52 @@ }, "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdateAtTenantScope", - "summary": "Deploys resources at tenant scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -492,34 +549,38 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at tenant scope.": { - "$ref": "./examples/PutDeploymentAtTenant.json" - } } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtTenantScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "description": "OK" + }, + "202": { + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -527,28 +588,38 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtTenantScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -557,47 +628,45 @@ } } } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtTenantScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -609,49 +678,50 @@ } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_WhatIfAtTenantScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/ExportTemplateRequest" }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "Parameters for exporting the template." } ], + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" + }, + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + } + }, "responses": { "200": { - "description": "OK - Returns What-If operation status", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/WhatIfOperationResult" + "$ref": "#/definitions/ResourceGroupExportResult" } }, "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -660,62 +730,26 @@ } } }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" - } - }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { "final-state-via": "location" } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtTenantScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtTenantScope", - "description": "Get all the deployments at the tenant scope.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -723,17 +757,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } }, "default": { @@ -746,31 +783,46 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to move.", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" @@ -783,2423 +835,49 @@ } }, "x-ms-long-running-operation": true - }, - "head": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to validate for move.", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtManagementGroupScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtSubscriptionScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to What If." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at subscription scope": { - "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - }, - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIf", - "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at resource group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all deployments." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Get providers.": { - "$ref": "./examples/GetProviders.json" - } - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all providers." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider.": { - "$ref": "./examples/GetProvider.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "ProviderResourceTypes_List", - "description": "List the resource types for a specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns resource types information for the resource provider.", - "schema": { - "$ref": "#/definitions/ProviderResourceTypeListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderResourceTypes.json" - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "x-ms-examples": { - "Get a resource provider at tenant scope": { - "$ref": "./examples/GetNamedProviderAtTenant.json" - } - }, - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to move.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to validate for move.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to create." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Update", - "description": "Updates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to update.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to update." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3208,60 +886,40 @@ } }, "x-ms-long-running-operation": true - }, + } + }, + "/subscriptions/{subscriptionId}/resources": { "get": { "tags": [ "Resources" ], - "operationId": "Resources_Get", - "description": "Gets a resource.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, + "name": "$filter", + "in": "query", + "required": false, "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." }, { - "name": "resourceType", - "in": "path", - "required": true, + "name": "$expand", + "in": "query", + "required": false, "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." }, { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false + "$ref": "#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3269,9 +927,9 @@ ], "responses": { "200": { - "description": "OK - Returns information about the resource.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/GenericResource" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -3280,164 +938,59 @@ "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/{resourceId}": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { "head": { "tags": [ "Resources" ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { - "name": "resourceId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { - "name": "api-version", - "in": "query", + "name": "resourceProviderNamespace", + "in": "path", "required": true, "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "description": "The resource provider of the resource to check." }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ { - "name": "resourceId", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "description": "The parent resource identity.", "x-ms-skip-url-encoding": true }, { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "description": "The resource type.", "x-ms-skip-url-encoding": true }, { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ - { - "name": "resourceId", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource to check whether it exists." }, { "name": "api-version", @@ -3448,24 +1001,15 @@ "x-ms-api-version": false }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Update resource parameters." + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } + "204": { + "description": "No Content" }, - "202": { - "description": "Accepted" + "404": { + "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -3473,74 +1017,61 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true + } }, - "get": { + "delete": { "tags": [ "Resources" ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { - "name": "resourceId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { - "name": "api-version", - "in": "query", + "name": "resourceProviderNamespace", + "in": "path", "required": true, "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } + "description": "The namespace of the resource provider." }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "summary": "Deletes a predefined tag value for a predefined tag name.", - "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", - "parameters": [ { - "name": "tagName", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "name": "tagValue", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to delete." + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to delete." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3548,10 +1079,13 @@ ], "responses": { "200": { - "description": "Predefined tag value successfully deleted." + "description": "OK" + }, + "202": { + "description": "Accepted" }, "204": { - "description": "Predefined tag value did not exist." + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3559,77 +1093,71 @@ "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-long-running-operation": true }, "put": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_CreateOrUpdateValue", - "summary": "Creates a predefined value for a predefined tag name.", - "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { - "name": "tagValue", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to create." + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value already exists. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a predefined tag name.", - "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", - "parameters": [ { - "name": "tagName", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag to create." + "description": "The name of the resource to create." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3637,74 +1165,91 @@ ], "responses": { "200": { - "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagDetails" + "$ref": "#/definitions/GenericResource" } }, "201": { - "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagDetails" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-long-running-operation": true }, - "delete": { + "patch": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_Delete", - "summary": "Deletes a predefined tag name.", - "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name successfully deleted." + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "204": { - "description": "Predefined tag name did not exist." + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "summary": "Gets a summary of tag usage under the subscription.", - "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", - "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3712,11 +1257,14 @@ ], "responses": { "200": { - "description": "OK - Returns an array of tag names and values.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3724,41 +1272,71 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "name": "operationId", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -3770,38 +1348,37 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + "/{resourceId}": { + "head": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -3809,40 +1386,41 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtTenantScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "resourceId", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3850,39 +1428,58 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtTenantScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3890,83 +1487,89 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", - "in": "path", + "name": "api-version", + "in": "query", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -3975,29 +1578,31 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", + "operationId": "Tags_DeleteValue", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "operationId", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4008,10 +1613,10 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "Predefined tag value successfully deleted." + }, + "204": { + "description": "Predefined tag value did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4020,26 +1625,28 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_CreateOrUpdateValue", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4050,9 +1657,15 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "Predefined tag value already exists. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/TagValue" } }, "default": { @@ -4061,38 +1674,24 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4103,9 +1702,15 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" } }, "default": { @@ -4115,35 +1720,21 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_Delete", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4154,10 +1745,10 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "description": "Predefined tag name successfully deleted." + }, + "204": { + "description": "Predefined tag name did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4165,43 +1756,30 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/TemplateHashResult" + "$ref": "#/definitions/TagsListResult" } }, "default": { @@ -4210,6 +1788,9 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -4354,264 +1935,45 @@ "description": "Tags successfully deleted." }, "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy. Use either the uri or id property, but not both." - }, - "id": { - "type": "string", - "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." - }, - "relativePath": { - "type": "string", - "description": "Applicable only if this template link references a Template Spec. This relativePath property can optionally be used to reference a Template Spec artifact by path." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - }, - "description": "The debug setting." - }, - "Deployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "ScopedDeployment": { + } + } + }, + "definitions": { + "GenericResourceFilter": { "properties": { - "location": { + "resourceType": { "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." + "description": "The resource type." }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "DeploymentWhatIf": { - "properties": { - "location": { + "tagname": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." + "tagvalue": { + "type": "string", + "description": "The tag value." } }, - "required": [ - "properties" - ], - "description": "Deployment What-if operation parameters." + "description": "Resource filter." }, - "ScopedDeploymentWhatIf": { + "ResourceGroupFilter": { "properties": { - "location": { + "tagName": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "DeploymentWhatIfProperties": { - "properties": { - "whatIfSettings": { - "$ref": "#/definitions/DeploymentWhatIfSettings", - "description": "Optional What-If operation settings." - } - }, - "allOf": [ - { - "$ref": "#/definitions/DeploymentProperties" - } - ], - "description": "Deployment What-if properties." - }, - "DeploymentWhatIfSettings": { - "properties": { - "resultFormat": { + "tagValue": { "type": "string", - "description": "The format of the What-If results", - "enum": [ - "ResourceIdOnly", - "FullResourcePayloads" - ], - "x-ms-enum": { - "name": "WhatIfResultFormat", - "modelAsString": false - } + "description": "The tag value." } }, - "description": "Deployment What-If operation settings." + "description": "Resource group filter." }, "CloudError": { "x-ms-external": true, @@ -4915,338 +2277,42 @@ "type": "string", "description": "The additional properties. " }, - "description": "The properties." - } - }, - "description": "Resource type managed by the resource provider." - }, - "Provider": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The provider ID." - }, - "namespace": { - "type": "string", - "description": "The namespace of the resource provider." - }, - "registrationState": { - "readOnly": true, - "type": "string", - "description": "The registration state of the resource provider." - }, - "registrationPolicy": { - "readOnly": true, - "type": "string", - "description": "The registration policy of the resource provider." - }, - "resourceTypes": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/ProviderResourceType" - }, - "description": "The collection of provider resource types." - } - }, - "description": "Resource provider information." - }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "type": "string", - "readOnly": true, - "description": "Denotes the state of provisioning.", - "enum": [ - "NotSpecified", - "Accepted", - "Running", - "Ready", - "Creating", - "Created", - "Deleting", - "Deleted", - "Canceled", - "Failed", - "Succeeded", - "Updating" - ], - "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true - } - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "readOnly": true, - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "templateLink": { - "readOnly": true, - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template." - }, - "parameters": { - "readOnly": true, - "type": "object", - "description": "Deployment parameters. " - }, - "parametersLink": { - "readOnly": true, - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. " - }, - "mode": { - "readOnly": true, - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "readOnly": true, - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "readOnly": true, - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "templateHash": { - "readOnly": true, - "type": "string", - "description": "The hash produced for the template." - }, - "outputResources": { - "readOnly": true, - "type": "array", - "description": "Array of provisioned resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of provisioned resources." - } - }, - "validatedResources": { - "readOnly": true, - "type": "array", - "description": "Array of validated resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of validated resources." - } - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "ResourceReference": { - "description": "The resource Id model.", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The fully qualified resource Id." - } - } - }, - "OnErrorDeployment": { - "properties": { - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior." - }, - "OnErrorDeploymentExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning for the on error deployment." - }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." + "description": "The properties." } }, - "description": "Information from validate template deployment response." + "description": "Resource type managed by the resource provider." }, - "DeploymentExtended": { + "Provider": { "properties": { "id": { "readOnly": true, "type": "string", - "description": "The ID of the deployment." + "description": "The provider ID." }, - "name": { - "readOnly": true, + "namespace": { "type": "string", - "description": "The name of the deployment." + "description": "The namespace of the resource provider." }, - "type": { + "registrationState": { "readOnly": true, "type": "string", - "description": "The type of the deployment." + "description": "The registration state of the resource provider." }, - "location": { + "registrationPolicy": { + "readOnly": true, "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." + "description": "The registration policy of the resource provider." }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { + "resourceTypes": { + "readOnly": true, "type": "array", "items": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderResourceType" }, - "description": "An array of deployments." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." + "description": "The collection of provider resource types." } }, - "description": "List of deployments." + "description": "Resource provider information." }, "ProviderListResult": { "properties": { @@ -5667,182 +2733,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningOperation": { - "readOnly": true, - "type": "string", - "description": "The name of the current provisioning operation.", - "enum": [ - "NotSpecified", - "Create", - "Delete", - "Waiting", - "AzureAsyncOperationWaiting", - "ResourceCacheWaiting", - "Action", - "Read", - "EvaluateDeploymentOutput", - "DeploymentCleanup" - ], - "x-ms-enum": { - "name": "ProvisioningOperation", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "The provisioning operation is not specified." - }, - { - "value": "Create", - "description": "The provisioning operation is create." - }, - { - "value": "Delete", - "description": "The provisioning operation is delete." - }, - { - "value": "Waiting", - "description": "The provisioning operation is waiting." - }, - { - "value": "AzureAsyncOperationWaiting", - "description": "The provisioning operation is waiting Azure async operation." - }, - { - "value": "ResourceCacheWaiting", - "description": "The provisioning operation is waiting for resource cache." - }, - { - "value": "Action", - "description": "The provisioning operation is action." - }, - { - "value": "Read", - "description": "The provisioning operation is read." - }, - { - "value": "EvaluateDeploymentOutput", - "description": "The provisioning operation is evaluate output." - }, - { - "value": "DeploymentCleanup", - "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." - } - ] - } - }, - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." - }, - "statusMessage": { - "readOnly": true, - "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", - "$ref": "#/definitions/StatusMessage" - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -5970,179 +2860,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, - "WhatIfPropertyChange": { - "required": [ - "path", - "propertyChangeType" - ], - "properties": { - "path": { - "type": "string", - "description": "The path of the property." - }, - "propertyChangeType": { - "type": "string", - "description": "The type of property change.", - "enum": [ - "Create", - "Delete", - "Modify", - "Array" - ], - "x-ms-enum": { - "name": "PropertyChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." - }, - { - "value": "Modify", - "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." - }, - { - "value": "Array", - "description": "The property is an array and contains nested changes." - } - ] - } - }, - "before": { - "type": "object", - "description": "The value of the property before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The value of the property after the deployment is executed." - }, - "children": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "description": "Nested property changes." - } - }, - "description": "The predicted change to the resource property." - }, - "WhatIfChange": { - "description": "Information about a single resource change predicted by What-If operation.", - "required": [ - "resourceId", - "changeType" - ], - "properties": { - "resourceId": { - "type": "string", - "description": "Resource ID" - }, - "changeType": { - "type": "string", - "description": "Type of change that will be made to the resource when the deployment is executed.", - "enum": [ - "Create", - "Delete", - "Ignore", - "Deploy", - "NoChange", - "Modify" - ], - "x-ms-enum": { - "name": "ChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." - }, - { - "value": "Ignore", - "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." - }, - { - "value": "Deploy", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." - }, - { - "value": "NoChange", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." - }, - { - "value": "Modify", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." - } - ] - } - }, - "before": { - "type": "object", - "description": "The snapshot of the resource before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The predicted snapshot of the resource after the deployment is executed." - }, - "delta": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "description": "The predicted changes to resource properties." - } - } - }, - "WhatIfOperationProperties": { - "description": "Deployment operation properties.", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "description": "List of resource changes predicted by What-If operation." - } - } - }, - "WhatIfOperationResult": { - "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", - "properties": { - "status": { - "type": "string", - "description": "Status of the What-If operation." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/WhatIfOperationProperties", - "description": "What-If operation properties." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error when What-If operation fails." - } - } - }, "Tags": { "description": "A dictionary of name and value pairs.", "properties": { @@ -6221,20 +2938,6 @@ }, "x-ms-azure-resource": true }, - "StatusMessage": { - "type": "object", - "description": "Operation status message object.", - "properties": { - "status": { - "type": "string", - "description": "Status of the deployment operation." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The error reported by the operation." - } - } - }, "ZoneMapping": { "properties": { "location": { @@ -6260,16 +2963,6 @@ "x-ms-parameter-location": "method", "x-ms-skip-url-encoding": true }, - "GroupIdParameter": { - "name": "groupId", - "in": "path", - "required": true, - "type": "string", - "description": "The management group ID.", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 90 - }, "SubscriptionIdParameter": { "name": "subscriptionId", "in": "path", @@ -6277,16 +2970,6 @@ "type": "string", "description": "The ID of the target subscription." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/resources.json index f36490689872..c3114ed14fcf 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-10-01/resources.json @@ -65,31 +65,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -97,32 +100,34 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true - }, - "head": { + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CheckExistenceAtScope", - "description": "Checks whether the deployment exists.", + "operationId": "Providers_RegisterAtManagementGroupScope", + "description": "Registers a management group with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/GroupIdParameter" } ], "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "200": { + "description": "OK - Returns information about the resource provider." }, "default": { "description": "Error response describing why the operation failed.", @@ -131,45 +136,35 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtScope", - "summary": "Deploys resources at a given scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider to register." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } }, "default": { @@ -178,36 +173,44 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at a given scope.": { - "$ref": "./examples/PutDeploymentAtScope.json" - } } - }, + } + }, + "/subscriptions/{subscriptionId}/providers": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtScope", - "description": "Gets a deployment.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all deployments." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -216,31 +219,50 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get providers.": { + "$ref": "./examples/GetProviders.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all providers." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -248,51 +270,46 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -301,32 +318,48 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get provider.": { + "$ref": "./examples/GetProvider.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtScope", - "description": "Exports the template used for specified deployment.", + "operationId": "ProviderResourceTypes_List", + "description": "List the resource types for a specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns resource types information for the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/ProviderResourceTypeListResult" } }, "default": { @@ -335,34 +368,40 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get provider resource types.": { + "$ref": "./examples/GetProviderResourceTypes.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/": { + "/providers/{resourceProviderNamespace}": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ListAtScope", - "description": "Get all the deployments at the given scope.", + "x-ms-examples": { + "Get a resource provider at tenant scope": { + "$ref": "./examples/GetNamedProviderAtTenant.json" + } + }, + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -370,9 +409,9 @@ ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -381,35 +420,61 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_DeleteAtTenantScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "minLength": 1, + "maxLength": 90 }, - "204": { - "description": "No Content" + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode. For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'. You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup. For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name). You can link more than one substringof together by adding and/or operators. You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results. You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resources", + "schema": { + "$ref": "#/definitions/ResourceListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -418,20 +483,34 @@ } } }, - "x-ms-long-running-operation": true - }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistenceAtTenantScope", - "description": "Checks whether the deployment exists.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -451,39 +530,52 @@ }, "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdateAtTenantScope", - "summary": "Deploys resources at tenant scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -492,34 +584,38 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at tenant scope.": { - "$ref": "./examples/PutDeploymentAtTenant.json" - } } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtTenantScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "description": "OK" + }, + "202": { + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -527,28 +623,38 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtTenantScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -557,47 +663,45 @@ } } } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtTenantScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -609,49 +713,50 @@ } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_WhatIfAtTenantScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/ExportTemplateRequest" }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "Parameters for exporting the template." } ], + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" + }, + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + } + }, "responses": { "200": { - "description": "OK - Returns What-If operation status", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/WhatIfOperationResult" + "$ref": "#/definitions/ResourceGroupExportResult" } }, "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -660,62 +765,26 @@ } } }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" - } - }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { "final-state-via": "location" } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtTenantScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtTenantScope", - "description": "Get all the deployments at the tenant scope.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation. You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -723,17 +792,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } }, "default": { @@ -746,31 +818,46 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to move.", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." + }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" @@ -783,77 +870,101 @@ } }, "x-ms-long-running-operation": true - }, - "head": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to validate for move.", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - }, - "put": { + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resources": { + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode. For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'. You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup. For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name). You can link more than one substringof together by adding and/or operators. You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results. You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Additional parameters supplied to the operation." + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -863,69 +974,78 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, - "get": { + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "204": { "description": "No Content" }, + "404": { + "description": "Not Found" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -933,51 +1053,74 @@ } } } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "name": "parameters", - "in": "body", + "name": "parentResourcePath", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to delete." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "description": "OK" }, "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + "description": "Accepted" }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -985,2549 +1128,54 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_WhatIfAtManagementGroupScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtSubscriptionScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to What If." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at subscription scope": { - "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - }, - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" - }, - "Create a deployment that will deploy a template with a uri and queryString": { - "$ref": "./examples/PutDeploymentResourceGroup.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIf", - "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at resource group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_RegisterAtManagementGroupScope", - "description": "Registers a management group with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/GroupIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all deployments." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Get providers.": { - "$ref": "./examples/GetProviders.json" - } - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all providers." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider.": { - "$ref": "./examples/GetProvider.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "ProviderResourceTypes_List", - "description": "List the resource types for a specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns resource types information for the resource provider.", - "schema": { - "$ref": "#/definitions/ProviderResourceTypeListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderResourceTypes.json" - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "x-ms-examples": { - "Get a resource provider at tenant scope": { - "$ref": "./examples/GetNamedProviderAtTenant.json" - } - }, - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode. For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'. You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup. For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name). You can link more than one substringof together by adding and/or operators. You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results. You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to move.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to validate for move.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode. For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'. You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup. For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name). You can link more than one substringof together by adding and/or operators. You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results. You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to create." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Update", - "description": "Updates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to update.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to update." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Get", - "description": "Gets a resource.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{resourceId}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ + "description": "The name of the resource group for the resource. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, { - "name": "resourceId", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true + "description": "The namespace of the resource provider." }, { - "name": "api-version", - "in": "query", + "name": "parentResourcePath", + "in": "path", "required": true, "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "name": "parameters", - "in": "body", + "name": "resourceType", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", - "parameters": [ { - "name": "resourceId", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource to create." }, { "name": "api-version", @@ -3536,6 +1184,18 @@ "type": "string", "description": "The API version to use for the operation.", "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -3545,51 +1205,14 @@ "$ref": "#/definitions/GenericResource" } }, - "default": { - "description": "Error response describing why the operation failed.", + "201": { + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/CloudError" + "$ref": "#/definitions/GenericResource" } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "summary": "Deletes a predefined tag value for a predefined tag name.", - "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." }, - { - "name": "tagValue", - "in": "path", - "required": true, - "type": "string", - "description": "The value of the tag to delete." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value successfully deleted." - }, - "204": { - "description": "Predefined tag value did not exist." + "202": { + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -3597,152 +1220,71 @@ "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-long-running-operation": true }, - "put": { + "patch": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_CreateOrUpdateValue", - "summary": "Creates a predefined value for a predefined tag name.", - "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 }, { - "name": "tagValue", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value already exists. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } + "description": "The namespace of the resource provider." }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a predefined tag name.", - "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", - "parameters": [ { - "name": "tagName", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The name of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name already exists. Returns information about the predefined tag name.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - }, - "201": { - "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", - "schema": { - "$ref": "#/definitions/TagDetails" - } + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_Delete", - "summary": "Deletes a predefined tag name.", - "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", - "parameters": [ { - "name": "tagName", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name successfully deleted." - }, - "204": { - "description": "Predefined tag name did not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "summary": "Gets a summary of tag usage under the subscription.", - "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", - "parameters": [ + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." + }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3750,11 +1292,14 @@ ], "responses": { "200": { - "description": "OK - Returns an array of tag names and values.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3762,41 +1307,71 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -3808,38 +1383,37 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + "/{resourceId}": { + "head": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -3847,40 +1421,41 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtTenantScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "resourceId", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3888,39 +1463,58 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtTenantScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3928,83 +1522,89 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", - "in": "path", + "name": "api-version", + "in": "query", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -4013,29 +1613,31 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", + "operationId": "Tags_DeleteValue", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "operationId", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4046,10 +1648,10 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "Predefined tag value successfully deleted." + }, + "204": { + "description": "Predefined tag value did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4058,26 +1660,28 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_CreateOrUpdateValue", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4088,9 +1692,15 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "Predefined tag value already exists. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/TagValue" } }, "default": { @@ -4099,38 +1709,24 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4141,9 +1737,15 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "Predefined tag name already exists. Returns information about the predefined tag name.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" } }, "default": { @@ -4153,35 +1755,21 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_Delete", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4192,10 +1780,10 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "description": "Predefined tag name successfully deleted." + }, + "204": { + "description": "Predefined tag name did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4203,43 +1791,30 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/TemplateHashResult" + "$ref": "#/definitions/TagsListResult" } }, "default": { @@ -4248,6 +1823,9 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -4389,275 +1967,48 @@ ], "responses": { "200": { - "description": "Tags successfully deleted." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy. Use either the uri or id property, but not both." - }, - "id": { - "type": "string", - "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." - }, - "relativePath": { - "type": "string", - "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - }, - "queryString": { - "type": "string", - "description": "The query string (for example, a SAS token) to be used with the templateLink URI." - } - }, - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - }, - "expressionEvaluationOptions": { - "$ref": "#/definitions/ExpressionEvaluationOptions", - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - }, - "description": "The debug setting." - }, - "Deployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" + "description": "Tags successfully deleted." }, - "description": "Deployment tags" + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "ScopedDeployment": { + } + } + }, + "definitions": { + "GenericResourceFilter": { "properties": { - "location": { + "resourceType": { "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." + "description": "The resource type." }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "DeploymentWhatIf": { - "properties": { - "location": { + "tagname": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." + "tagvalue": { + "type": "string", + "description": "The tag value." } }, - "required": [ - "properties" - ], - "description": "Deployment What-if operation parameters." + "description": "Resource filter." }, - "ScopedDeploymentWhatIf": { + "ResourceGroupFilter": { "properties": { - "location": { + "tagName": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "DeploymentWhatIfProperties": { - "properties": { - "whatIfSettings": { - "$ref": "#/definitions/DeploymentWhatIfSettings", - "description": "Optional What-If operation settings." - } - }, - "allOf": [ - { - "$ref": "#/definitions/DeploymentProperties" - } - ], - "description": "Deployment What-if properties." - }, - "DeploymentWhatIfSettings": { - "properties": { - "resultFormat": { + "tagValue": { "type": "string", - "description": "The format of the What-If results", - "enum": [ - "ResourceIdOnly", - "FullResourcePayloads" - ], - "x-ms-enum": { - "name": "WhatIfResultFormat", - "modelAsString": false - } + "description": "The tag value." } }, - "description": "Deployment What-If operation settings." + "description": "Resource group filter." }, "CloudError": { "x-ms-external": true, @@ -4973,326 +2324,30 @@ "type": "string", "description": "The provider ID." }, - "namespace": { - "type": "string", - "description": "The namespace of the resource provider." - }, - "registrationState": { - "readOnly": true, - "type": "string", - "description": "The registration state of the resource provider." - }, - "registrationPolicy": { - "readOnly": true, - "type": "string", - "description": "The registration policy of the resource provider." - }, - "resourceTypes": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/ProviderResourceType" - }, - "description": "The collection of provider resource types." - } - }, - "description": "Resource provider information." - }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "type": "string", - "readOnly": true, - "description": "Denotes the state of provisioning.", - "enum": [ - "NotSpecified", - "Accepted", - "Running", - "Ready", - "Creating", - "Created", - "Deleting", - "Deleted", - "Canceled", - "Failed", - "Succeeded", - "Updating" - ], - "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true - } - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "readOnly": true, - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "templateLink": { - "readOnly": true, - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template." - }, - "parameters": { - "readOnly": true, - "type": "object", - "description": "Deployment parameters. " - }, - "parametersLink": { - "readOnly": true, - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. " - }, - "mode": { - "readOnly": true, - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "readOnly": true, - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "readOnly": true, - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "templateHash": { - "readOnly": true, - "type": "string", - "description": "The hash produced for the template." - }, - "outputResources": { - "readOnly": true, - "type": "array", - "description": "Array of provisioned resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of provisioned resources." - } - }, - "validatedResources": { - "readOnly": true, - "type": "array", - "description": "Array of validated resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of validated resources." - } - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "ResourceReference": { - "description": "The resource Id model.", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The fully qualified resource Id." - } - } - }, - "OnErrorDeployment": { - "properties": { - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior." - }, - "OnErrorDeploymentExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning for the on error deployment." - }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "readOnly": true, + "namespace": { "type": "string", - "description": "The name of the deployment." + "description": "The namespace of the resource provider." }, - "type": { + "registrationState": { "readOnly": true, "type": "string", - "description": "The type of the deployment." + "description": "The registration state of the resource provider." }, - "location": { + "registrationPolicy": { + "readOnly": true, "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." + "description": "The registration policy of the resource provider." }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { + "resourceTypes": { + "readOnly": true, "type": "array", "items": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderResourceType" }, - "description": "An array of deployments." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." + "description": "The collection of provider resource types." } }, - "description": "List of deployments." + "description": "Resource provider information." }, "ProviderListResult": { "properties": { @@ -5713,182 +2768,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningOperation": { - "readOnly": true, - "type": "string", - "description": "The name of the current provisioning operation.", - "enum": [ - "NotSpecified", - "Create", - "Delete", - "Waiting", - "AzureAsyncOperationWaiting", - "ResourceCacheWaiting", - "Action", - "Read", - "EvaluateDeploymentOutput", - "DeploymentCleanup" - ], - "x-ms-enum": { - "name": "ProvisioningOperation", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "The provisioning operation is not specified." - }, - { - "value": "Create", - "description": "The provisioning operation is create." - }, - { - "value": "Delete", - "description": "The provisioning operation is delete." - }, - { - "value": "Waiting", - "description": "The provisioning operation is waiting." - }, - { - "value": "AzureAsyncOperationWaiting", - "description": "The provisioning operation is waiting Azure async operation." - }, - { - "value": "ResourceCacheWaiting", - "description": "The provisioning operation is waiting for resource cache." - }, - { - "value": "Action", - "description": "The provisioning operation is action." - }, - { - "value": "Read", - "description": "The provisioning operation is read." - }, - { - "value": "EvaluateDeploymentOutput", - "description": "The provisioning operation is evaluate output." - }, - { - "value": "DeploymentCleanup", - "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." - } - ] - } - }, - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." - }, - "statusMessage": { - "readOnly": true, - "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", - "$ref": "#/definitions/StatusMessage" - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -6016,179 +2895,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, - "WhatIfPropertyChange": { - "required": [ - "path", - "propertyChangeType" - ], - "properties": { - "path": { - "type": "string", - "description": "The path of the property." - }, - "propertyChangeType": { - "type": "string", - "description": "The type of property change.", - "enum": [ - "Create", - "Delete", - "Modify", - "Array" - ], - "x-ms-enum": { - "name": "PropertyChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." - }, - { - "value": "Modify", - "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." - }, - { - "value": "Array", - "description": "The property is an array and contains nested changes." - } - ] - } - }, - "before": { - "type": "object", - "description": "The value of the property before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The value of the property after the deployment is executed." - }, - "children": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "description": "Nested property changes." - } - }, - "description": "The predicted change to the resource property." - }, - "WhatIfChange": { - "description": "Information about a single resource change predicted by What-If operation.", - "required": [ - "resourceId", - "changeType" - ], - "properties": { - "resourceId": { - "type": "string", - "description": "Resource ID" - }, - "changeType": { - "type": "string", - "description": "Type of change that will be made to the resource when the deployment is executed.", - "enum": [ - "Create", - "Delete", - "Ignore", - "Deploy", - "NoChange", - "Modify" - ], - "x-ms-enum": { - "name": "ChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." - }, - { - "value": "Ignore", - "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." - }, - { - "value": "Deploy", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." - }, - { - "value": "NoChange", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." - }, - { - "value": "Modify", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." - } - ] - } - }, - "before": { - "type": "object", - "description": "The snapshot of the resource before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The predicted snapshot of the resource after the deployment is executed." - }, - "delta": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "description": "The predicted changes to resource properties." - } - } - }, - "WhatIfOperationProperties": { - "description": "Deployment operation properties.", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "description": "List of resource changes predicted by What-If operation." - } - } - }, - "WhatIfOperationResult": { - "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", - "properties": { - "status": { - "type": "string", - "description": "Status of the What-If operation." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/WhatIfOperationProperties", - "description": "What-If operation properties." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error when What-If operation fails." - } - } - }, "Tags": { "description": "A dictionary of name and value pairs.", "properties": { @@ -6267,38 +2973,6 @@ }, "x-ms-azure-resource": true }, - "StatusMessage": { - "type": "object", - "description": "Operation status message object.", - "properties": { - "status": { - "type": "string", - "description": "Status of the deployment operation." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The error reported by the operation." - } - } - }, - "ExpressionEvaluationOptions": { - "properties": { - "scope": { - "type": "string", - "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", - "enum": [ - "NotSpecified", - "Outer", - "Inner" - ], - "x-ms-enum": { - "name": "ExpressionEvaluationOptionsScopeType", - "modelAsString": true - } - } - }, - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." - }, "ZoneMapping": { "properties": { "location": { @@ -6341,16 +3015,6 @@ "type": "string", "description": "The ID of the target subscription." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/resources.json index 2b1e32082928..ecc384275f82 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-01-01/resources.json @@ -65,31 +65,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -97,32 +100,34 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true - }, - "head": { + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CheckExistenceAtScope", - "description": "Checks whether the deployment exists.", + "operationId": "Providers_RegisterAtManagementGroupScope", + "description": "Registers a management group with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/GroupIdParameter" } ], "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "200": { + "description": "OK - Returns information about the resource provider." }, "default": { "description": "Error response describing why the operation failed.", @@ -131,45 +136,35 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtScope", - "summary": "Deploys resources at a given scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider to register." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } }, "default": { @@ -178,36 +173,44 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at a given scope.": { - "$ref": "./examples/PutDeploymentAtScope.json" - } } - }, + } + }, + "/subscriptions/{subscriptionId}/providers": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtScope", - "description": "Gets a deployment.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all deployments." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -216,31 +219,50 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get providers.": { + "$ref": "./examples/GetProviders.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed returns all providers." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -248,51 +270,46 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -301,32 +318,48 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get provider.": { + "$ref": "./examples/GetProvider.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtScope", - "description": "Exports the template used for specified deployment.", + "operationId": "ProviderResourceTypes_List", + "description": "List the resource types for a specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns resource types information for the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/ProviderResourceTypeListResult" } }, "default": { @@ -335,34 +368,40 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get provider resource types.": { + "$ref": "./examples/GetProviderResourceTypes.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/": { + "/providers/{resourceProviderNamespace}": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ListAtScope", - "description": "Get all the deployments at the given scope.", + "x-ms-examples": { + "Get a resource provider at tenant scope": { + "$ref": "./examples/GetNamedProviderAtTenant.json" + } + }, + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -370,9 +409,9 @@ ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -381,35 +420,62 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_DeleteAtTenantScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, - "204": { - "description": "No Content" + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resources", + "schema": { + "$ref": "#/definitions/ResourceListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -418,20 +484,35 @@ } } }, - "x-ms-long-running-operation": true - }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistenceAtTenantScope", - "description": "Checks whether the deployment exists.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -451,39 +532,53 @@ }, "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdateAtTenantScope", - "summary": "Deploys resources at tenant scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -492,34 +587,54 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at tenant scope.": { - "$ref": "./examples/PutDeploymentAtTenant.json" - } } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtTenantScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "forceDeletionTypes", + "in": "query", + "required": false, + "type": "string", + "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], + "x-ms-examples": { + "Force delete all the Virtual Machines in a resource group": { + "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" + }, + "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { + "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" + } + }, "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "description": "OK" + }, + "202": { + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -527,28 +642,39 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtTenantScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -557,47 +683,46 @@ } } } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtTenantScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -609,49 +734,50 @@ } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_WhatIfAtTenantScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/ExportTemplateRequest" }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "Parameters for exporting the template." } ], + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" + }, + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + } + }, "responses": { "200": { - "description": "OK - Returns What-If operation status", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/WhatIfOperationResult" + "$ref": "#/definitions/ResourceGroupExportResult" } }, "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -660,80 +786,47 @@ } } }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" - } - }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { "final-state-via": "location" } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/resourcegroups": { + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ExportTemplateAtTenantScope", - "description": "Exports the template used for specified deployment.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtTenantScope", - "description": "Get all the deployments at the tenant scope.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } }, "default": { @@ -746,31 +839,47 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" @@ -783,78 +892,49 @@ } }, "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resources to validate for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourcesMoveInfo" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "202": { + "description": "Accepted" }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -863,35 +943,51 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resources": { "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -900,84 +996,79 @@ "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "204": { - "description": "No Content" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." }, { - "name": "parameters", - "in": "body", + "name": "api-version", + "in": "query", "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + "204": { + "description": "No Content" }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "404": { + "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -986,2316 +1077,20 @@ } } } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_WhatIfAtManagementGroupScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtSubscriptionScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to What If." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at subscription scope": { - "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - }, - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" - }, - "Create a deployment that will deploy a template with a uri and queryString": { - "$ref": "./examples/PutDeploymentResourceGroup.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIf", - "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at resource group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_RegisterAtManagementGroupScope", - "description": "Registers a management group with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/GroupIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all deployments." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Get providers.": { - "$ref": "./examples/GetProviders.json" - } - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed returns all providers." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider.": { - "$ref": "./examples/GetProvider.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "ProviderResourceTypes_List", - "description": "List the resource types for a specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns resource types information for the resource provider.", - "schema": { - "$ref": "#/definitions/ProviderResourceTypeListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderResourceTypes.json" - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "x-ms-examples": { - "Get a resource provider at tenant scope": { - "$ref": "./examples/GetNamedProviderAtTenant.json" - } - }, - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "forceDeletionTypes", - "in": "query", - "required": false, - "type": "string", - "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "x-ms-examples": { - "Force delete all the Virtual Machines in a resource group": { - "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" - }, - "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { - "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" - } - }, - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to move must be in the same source resource group. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to move must be in the same source resource group. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resources to validate for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to create." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Update", - "description": "Updates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to update.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to update." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Get", - "description": "Gets a resource.", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 @@ -3310,210 +1105,26 @@ { "name": "parentResourcePath", "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{resourceId}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, { - "name": "resourceId", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "description": "The resource type.", "x-ms-skip-url-encoding": true }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to delete." + }, { "name": "api-version", "in": "query", @@ -3523,25 +1134,19 @@ "x-ms-api-version": false }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Update resource parameters." + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } + "description": "OK" }, "202": { "description": "Accepted" }, + "204": { + "description": "No Content" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3551,115 +1156,69 @@ }, "x-ms-long-running-operation": true }, - "get": { + "put": { "tags": [ "Resources" ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { - "name": "resourceId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "name": "api-version", - "in": "query", + "name": "resourceProviderNamespace", + "in": "path", "required": true, "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } + "description": "The namespace of the resource provider." }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "summary": "Deletes a predefined tag value for a predefined tag name.", - "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", - "parameters": [ { - "name": "tagName", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "name": "tagValue", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to delete." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value successfully deleted." - }, - "204": { - "description": "Predefined tag value did not exist." + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdateValue", - "summary": "Creates a predefined value for a predefined tag name.", - "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", - "parameters": [ { - "name": "tagName", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource to create." }, { - "name": "tagValue", - "in": "path", + "name": "api-version", + "in": "query", "required": true, "type": "string", - "description": "The value of the tag to create." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3667,119 +1226,92 @@ ], "responses": { "200": { - "description": "Predefined tag value already exists. Returns information about the predefined tag value.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagValue" + "$ref": "#/definitions/GenericResource" } }, "201": { - "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagValue" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { + }, + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a predefined tag name.", - "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name already exists. Returns information about the predefined tag name.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - }, - "201": { - "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", - "schema": { - "$ref": "#/definitions/TagDetails" - } + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_Delete", - "summary": "Deletes a predefined tag name.", - "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", - "parameters": [ { - "name": "tagName", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name successfully deleted." - }, - "204": { - "description": "Predefined tag name did not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "summary": "Gets a summary of tag usage under the subscription.", - "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", - "parameters": [ + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." + }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3787,11 +1319,14 @@ ], "responses": { "200": { - "description": "OK - Returns an array of tag names and values.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3799,41 +1334,72 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -3845,38 +1411,37 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + "/{resourceId}": { + "head": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -3884,40 +1449,41 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtTenantScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "resourceId", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3925,39 +1491,58 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtTenantScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3965,83 +1550,89 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", - "in": "path", + "name": "api-version", + "in": "query", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -4050,29 +1641,31 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", + "operationId": "Tags_DeleteValue", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "operationId", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4083,10 +1676,10 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "Predefined tag value successfully deleted." + }, + "204": { + "description": "Predefined tag value did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4095,26 +1688,28 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_CreateOrUpdateValue", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4125,9 +1720,15 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "Predefined tag value already exists. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/TagValue" } }, "default": { @@ -4136,39 +1737,24 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4179,9 +1765,15 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" } }, "default": { @@ -4191,36 +1783,21 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_Delete", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4231,10 +1808,10 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "description": "Predefined tag name successfully deleted." + }, + "204": { + "description": "Predefined tag name did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4242,43 +1819,30 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/TemplateHashResult" + "$ref": "#/definitions/TagsListResult" } }, "default": { @@ -4287,6 +1851,9 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -4425,278 +1992,51 @@ { "$ref": "#/parameters/ApiVersionParameter" } - ], - "responses": { - "200": { - "description": "Tags successfully deleted." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy. Use either the uri or id property, but not both." - }, - "id": { - "type": "string", - "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." - }, - "relativePath": { - "type": "string", - "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - }, - "queryString": { - "type": "string", - "description": "The query string (for example, a SAS token) to be used with the templateLink URI." - } - }, - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - }, - "expressionEvaluationOptions": { - "$ref": "#/definitions/ExpressionEvaluationOptions", - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - }, - "description": "The debug setting." - }, - "Deployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" + ], + "responses": { + "200": { + "description": "Tags successfully deleted." }, - "description": "Deployment tags" + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "ScopedDeployment": { + } + } + }, + "definitions": { + "GenericResourceFilter": { "properties": { - "location": { + "resourceType": { "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." + "description": "The resource type." }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "DeploymentWhatIf": { - "properties": { - "location": { + "tagname": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." + "tagvalue": { + "type": "string", + "description": "The tag value." } }, - "required": [ - "properties" - ], - "description": "Deployment What-if operation parameters." + "description": "Resource filter." }, - "ScopedDeploymentWhatIf": { + "ResourceGroupFilter": { "properties": { - "location": { + "tagName": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "DeploymentWhatIfProperties": { - "properties": { - "whatIfSettings": { - "$ref": "#/definitions/DeploymentWhatIfSettings", - "description": "Optional What-If operation settings." - } - }, - "allOf": [ - { - "$ref": "#/definitions/DeploymentProperties" - } - ], - "description": "Deployment What-if properties." - }, - "DeploymentWhatIfSettings": { - "properties": { - "resultFormat": { + "tagValue": { "type": "string", - "description": "The format of the What-If results", - "enum": [ - "ResourceIdOnly", - "FullResourcePayloads" - ], - "x-ms-enum": { - "name": "WhatIfResultFormat", - "modelAsString": false - } + "description": "The tag value." } }, - "description": "Deployment What-If operation settings." + "description": "Resource group filter." }, "CloudError": { "x-ms-external": true, @@ -5024,314 +2364,18 @@ "registrationPolicy": { "readOnly": true, "type": "string", - "description": "The registration policy of the resource provider." - }, - "resourceTypes": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/ProviderResourceType" - }, - "description": "The collection of provider resource types." - } - }, - "description": "Resource provider information." - }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "type": "string", - "readOnly": true, - "description": "Denotes the state of provisioning.", - "enum": [ - "NotSpecified", - "Accepted", - "Running", - "Ready", - "Creating", - "Created", - "Deleting", - "Deleted", - "Canceled", - "Failed", - "Succeeded", - "Updating" - ], - "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true - } - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "readOnly": true, - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "templateLink": { - "readOnly": true, - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template." - }, - "parameters": { - "readOnly": true, - "type": "object", - "description": "Deployment parameters. " - }, - "parametersLink": { - "readOnly": true, - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. " - }, - "mode": { - "readOnly": true, - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "readOnly": true, - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "readOnly": true, - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "templateHash": { - "readOnly": true, - "type": "string", - "description": "The hash produced for the template." - }, - "outputResources": { - "readOnly": true, - "type": "array", - "description": "Array of provisioned resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of provisioned resources." - } - }, - "validatedResources": { - "readOnly": true, - "type": "array", - "description": "Array of validated resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of validated resources." - } - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "ResourceReference": { - "description": "The resource Id model.", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The fully qualified resource Id." - } - } - }, - "OnErrorDeployment": { - "properties": { - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior." - }, - "OnErrorDeploymentExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning for the on error deployment." - }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The name of the deployment." - }, - "type": { - "readOnly": true, - "type": "string", - "description": "The type of the deployment." - }, - "location": { - "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." + "description": "The registration policy of the resource provider." }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { + "resourceTypes": { + "readOnly": true, "type": "array", "items": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderResourceType" }, - "description": "An array of deployments." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." + "description": "The collection of provider resource types." } }, - "description": "List of deployments." + "description": "Resource provider information." }, "ProviderListResult": { "properties": { @@ -5773,182 +2817,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningOperation": { - "readOnly": true, - "type": "string", - "description": "The name of the current provisioning operation.", - "enum": [ - "NotSpecified", - "Create", - "Delete", - "Waiting", - "AzureAsyncOperationWaiting", - "ResourceCacheWaiting", - "Action", - "Read", - "EvaluateDeploymentOutput", - "DeploymentCleanup" - ], - "x-ms-enum": { - "name": "ProvisioningOperation", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "The provisioning operation is not specified." - }, - { - "value": "Create", - "description": "The provisioning operation is create." - }, - { - "value": "Delete", - "description": "The provisioning operation is delete." - }, - { - "value": "Waiting", - "description": "The provisioning operation is waiting." - }, - { - "value": "AzureAsyncOperationWaiting", - "description": "The provisioning operation is waiting Azure async operation." - }, - { - "value": "ResourceCacheWaiting", - "description": "The provisioning operation is waiting for resource cache." - }, - { - "value": "Action", - "description": "The provisioning operation is action." - }, - { - "value": "Read", - "description": "The provisioning operation is read." - }, - { - "value": "EvaluateDeploymentOutput", - "description": "The provisioning operation is evaluate output." - }, - { - "value": "DeploymentCleanup", - "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." - } - ] - } - }, - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." - }, - "statusMessage": { - "readOnly": true, - "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", - "$ref": "#/definitions/StatusMessage" - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -6084,193 +2952,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, - "WhatIfPropertyChange": { - "required": [ - "path", - "propertyChangeType" - ], - "properties": { - "path": { - "type": "string", - "description": "The path of the property." - }, - "propertyChangeType": { - "type": "string", - "description": "The type of property change.", - "enum": [ - "Create", - "Delete", - "Modify", - "Array", - "NoEffect" - ], - "x-ms-enum": { - "name": "PropertyChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." - }, - { - "value": "Modify", - "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." - }, - { - "value": "Array", - "description": "The property is an array and contains nested changes." - }, - { - "value": "NoEffect", - "description": "The property will not be set or updated." - } - ] - } - }, - "before": { - "type": "object", - "description": "The value of the property before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The value of the property after the deployment is executed." - }, - "children": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "description": "Nested property changes." - } - }, - "description": "The predicted change to the resource property." - }, - "WhatIfChange": { - "description": "Information about a single resource change predicted by What-If operation.", - "required": [ - "resourceId", - "changeType" - ], - "properties": { - "resourceId": { - "type": "string", - "description": "Resource ID" - }, - "changeType": { - "type": "string", - "description": "Type of change that will be made to the resource when the deployment is executed.", - "enum": [ - "Create", - "Delete", - "Ignore", - "Deploy", - "NoChange", - "Modify", - "Unsupported" - ], - "x-ms-enum": { - "name": "ChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." - }, - { - "value": "Ignore", - "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." - }, - { - "value": "Deploy", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." - }, - { - "value": "NoChange", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." - }, - { - "value": "Modify", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." - }, - { - "value": "Unsupported", - "description": "The resource is not supported by What-If." - } - ] - } - }, - "unsupportedReason": { - "type": "string", - "description": "The explanation about why the resource is unsupported by What-If." - }, - "before": { - "type": "object", - "description": "The snapshot of the resource before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The predicted snapshot of the resource after the deployment is executed." - }, - "delta": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "description": "The predicted changes to resource properties." - } - } - }, - "WhatIfOperationProperties": { - "description": "Deployment operation properties.", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "description": "List of resource changes predicted by What-If operation." - } - } - }, - "WhatIfOperationResult": { - "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", - "properties": { - "status": { - "type": "string", - "description": "Status of the What-If operation." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/WhatIfOperationProperties", - "description": "What-If operation properties." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error when What-If operation fails." - } - } - }, "Tags": { "description": "A dictionary of name and value pairs.", "properties": { @@ -6349,38 +3030,6 @@ }, "x-ms-azure-resource": true }, - "StatusMessage": { - "type": "object", - "description": "Operation status message object.", - "properties": { - "status": { - "type": "string", - "description": "Status of the deployment operation." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The error reported by the operation." - } - } - }, - "ExpressionEvaluationOptions": { - "properties": { - "scope": { - "type": "string", - "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", - "enum": [ - "NotSpecified", - "Outer", - "Inner" - ], - "x-ms-enum": { - "name": "ExpressionEvaluationOptionsScopeType", - "modelAsString": true - } - } - }, - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." - }, "ZoneMapping": { "type": "object", "properties": { @@ -6424,17 +3073,6 @@ "type": "string", "description": "The ID of the target subscription." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/resources.json index b66b38261da2..af036da133a6 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2021-04-01/resources.json @@ -65,31 +65,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -97,32 +100,34 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true - }, - "head": { + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CheckExistenceAtScope", - "description": "Checks whether the deployment exists.", + "operationId": "Providers_RegisterAtManagementGroupScope", + "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/GroupIdParameter" } ], "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "200": { + "description": "OK - Returns information about the resource provider." }, "default": { "description": "Error response describing why the operation failed.", @@ -131,45 +136,35 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtScope", - "summary": "Deploys resources at a given scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_ProviderPermissions", + "description": "Get the provider permissions.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information on the provider permissions.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderPermissionListResult" } }, "default": { @@ -179,35 +174,49 @@ } } }, - "x-ms-long-running-operation": true, "x-ms-examples": { - "Create deployment at a given scope.": { - "$ref": "./examples/PutDeploymentAtScope.json" + "Get provider resource types.": { + "$ref": "./examples/GetProviderPermissions.json" } } - }, - "get": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtScope", - "description": "Gets a deployment.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "properties", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ProviderRegistrationRequest" + }, + "description": "The third party consent for S2S." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } }, "default": { @@ -219,28 +228,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/subscriptions/{subscriptionId}/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -248,32 +263,31 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get providers.": { + "$ref": "./examples/GetProviders.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -281,18 +295,9 @@ ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -301,32 +306,46 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -335,44 +354,48 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get provider.": { + "$ref": "./examples/GetProvider.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ListAtScope", - "description": "Get all the deployments at the given scope.", + "operationId": "ProviderResourceTypes_List", + "description": "List the resource types for a specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns resource types information for the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ProviderResourceTypeListResult" } }, "default": { @@ -382,34 +405,113 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-examples": { + "Get provider resource types.": { + "$ref": "./examples/GetProviderResourceTypes.json" + } + } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtTenantScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "x-ms-examples": { + "Get a resource provider at tenant scope": { + "$ref": "./examples/GetNamedProviderAtTenant.json" + } + }, + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, - "204": { - "description": "No Content" + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { + "get": { + "tags": [ + "ResourceGroups" + ], + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resources", + "schema": { + "$ref": "#/definitions/ResourceListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -418,20 +520,35 @@ } } }, - "x-ms-long-running-operation": true - }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistenceAtTenantScope", - "description": "Checks whether the deployment exists.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -451,39 +568,53 @@ }, "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdateAtTenantScope", - "summary": "Deploys resources at tenant scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -492,34 +623,54 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at tenant scope.": { - "$ref": "./examples/PutDeploymentAtTenant.json" - } } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtTenantScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "forceDeletionTypes", + "in": "query", + "required": false, + "type": "string", + "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], + "x-ms-examples": { + "Force delete all the Virtual Machines in a resource group": { + "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" + }, + "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { + "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" + } + }, "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "description": "OK" + }, + "202": { + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -527,28 +678,39 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtTenantScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -557,47 +719,46 @@ } } } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtTenantScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -609,49 +770,50 @@ } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_WhatIfAtTenantScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/ExportTemplateRequest" }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "Parameters for exporting the template." } ], + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" + }, + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + } + }, "responses": { "200": { - "description": "OK - Returns What-If operation status", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/WhatIfOperationResult" + "$ref": "#/definitions/ResourceGroupExportResult" } }, "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -660,62 +822,26 @@ } } }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" - } - }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { "final-state-via": "location" } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtTenantScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtTenantScope", - "description": "Get all the deployments at the tenant scope.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -723,17 +849,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } }, "default": { @@ -746,31 +875,47 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be moved.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" @@ -783,77 +928,102 @@ } }, "x-ms-long-running-operation": true - }, - "head": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - }, - "put": { + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resources": { + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Additional parameters supplied to the operation." + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of recommendations per page if a paged version of this API is being used." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -863,69 +1033,79 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, - "get": { + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "204": { "description": "No Content" }, + "404": { + "description": "Not Found" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -933,2675 +1113,54 @@ } } } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtManagementGroupScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtSubscriptionScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to What If." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at subscription scope": { - "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - }, - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" - }, - "Create a deployment that will deploy a template with a uri and queryString": { - "$ref": "./examples/PutDeploymentResourceGroup.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIf", - "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at resource group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_RegisterAtManagementGroupScope", - "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/GroupIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ProviderPermissions", - "description": "Get the provider permissions.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information on the provider permissions.", - "schema": { - "$ref": "#/definitions/ProviderPermissionListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderPermissions.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "properties", - "in": "body", - "required": false, - "schema": { - "$ref": "#/definitions/ProviderRegistrationRequest" - }, - "description": "The third party consent for S2S." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Get providers.": { - "$ref": "./examples/GetProviders.json" - } - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider.": { - "$ref": "./examples/GetProvider.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "ProviderResourceTypes_List", - "description": "List the resource types for a specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns resource types information for the resource provider.", - "schema": { - "$ref": "#/definitions/ProviderResourceTypeListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderResourceTypes.json" - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "x-ms-examples": { - "Get a resource provider at tenant scope": { - "$ref": "./examples/GetNamedProviderAtTenant.json" - } - }, - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "forceDeletionTypes", - "in": "query", - "required": false, - "type": "string", - "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "x-ms-examples": { - "Force delete all the Virtual Machines in a resource group": { - "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" - }, - "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { - "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" - } - }, - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be moved.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of recommendations per page if a paged version of this API is being used." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to create." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Update", - "description": "Updates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to update.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to update." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Get", - "description": "Gets a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{resourceId}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", - "parameters": [ + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, { - "name": "resourceId", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "description": "The resource type.", "x-ms-skip-url-encoding": true }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to delete." + }, { "name": "api-version", "in": "query", @@ -3609,14 +1168,20 @@ "type": "string", "description": "The API version to use for the operation.", "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3624,78 +1189,72 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_DeleteValue", - "summary": "Deletes a predefined tag value for a predefined tag name.", - "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "name": "tagValue", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to delete." + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value successfully deleted." - }, - "204": { - "description": "Predefined tag value did not exist." + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdateValue", - "summary": "Creates a predefined value for a predefined tag name.", - "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", - "parameters": [ { - "name": "tagName", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource to create." }, { - "name": "tagValue", - "in": "path", + "name": "api-version", + "in": "query", "required": true, "type": "string", - "description": "The value of the tag to create." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3703,119 +1262,92 @@ ], "responses": { "200": { - "description": "Predefined tag value already exists. Returns information about the predefined tag value.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagValue" + "$ref": "#/definitions/GenericResource" } }, "201": { - "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagValue" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { + }, + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a predefined tag name.", - "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag to create." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name already exists. Returns information about the predefined tag name.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - }, - "201": { - "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", - "schema": { - "$ref": "#/definitions/TagDetails" - } + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_Delete", - "summary": "Deletes a predefined tag name.", - "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", - "parameters": [ { - "name": "tagName", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name successfully deleted." - }, - "204": { - "description": "Predefined tag name did not exist." + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "summary": "Gets a summary of tag usage under the subscription.", - "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", - "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3823,53 +1355,87 @@ ], "responses": { "200": { - "description": "OK - Returns an array of tag names and values.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + } + } + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "name": "operationId", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -3881,38 +1447,37 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + "/{resourceId}": { + "head": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -3920,40 +1485,41 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtTenantScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "resourceId", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3961,39 +1527,58 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtTenantScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -4001,83 +1586,89 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", - "in": "path", + "name": "api-version", + "in": "query", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -4086,29 +1677,31 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", + "operationId": "Tags_DeleteValue", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "operationId", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4119,10 +1712,10 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "Predefined tag value successfully deleted." + }, + "204": { + "description": "Predefined tag value did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4131,26 +1724,28 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_CreateOrUpdateValue", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4161,9 +1756,15 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "Predefined tag value already exists. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/TagValue" } }, "default": { @@ -4172,39 +1773,24 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4215,9 +1801,15 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" } }, "default": { @@ -4227,36 +1819,21 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_Delete", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4267,10 +1844,10 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "description": "Predefined tag name successfully deleted." + }, + "204": { + "description": "Predefined tag name did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4278,43 +1855,30 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/TemplateHashResult" + "$ref": "#/definitions/TagsListResult" } }, "default": { @@ -4323,6 +1887,9 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -4463,276 +2030,49 @@ } ], "responses": { - "200": { - "description": "Tags successfully deleted." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy. Use either the uri or id property, but not both." - }, - "id": { - "type": "string", - "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." - }, - "relativePath": { - "type": "string", - "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - }, - "queryString": { - "type": "string", - "description": "The query string (for example, a SAS token) to be used with the templateLink URI." - } - }, - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - }, - "expressionEvaluationOptions": { - "$ref": "#/definitions/ExpressionEvaluationOptions", - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - }, - "description": "The debug setting." - }, - "Deployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "ScopedDeployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." + "200": { + "description": "Tags successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } } - }, - "description": "The deployment export result. " - }, - "DeploymentWhatIf": { + } + } + }, + "definitions": { + "GenericResourceFilter": { "properties": { - "location": { + "resourceType": { "type": "string", - "description": "The location to store the deployment data." + "description": "The resource type." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "ScopedDeploymentWhatIf": { - "properties": { - "location": { + "tagname": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "DeploymentWhatIfProperties": { - "properties": { - "whatIfSettings": { - "$ref": "#/definitions/DeploymentWhatIfSettings", - "description": "Optional What-If operation settings." + "tagvalue": { + "type": "string", + "description": "The tag value." } }, - "allOf": [ - { - "$ref": "#/definitions/DeploymentProperties" - } - ], - "description": "Deployment What-if properties." + "description": "Resource filter." }, - "DeploymentWhatIfSettings": { + "ResourceGroupFilter": { "properties": { - "resultFormat": { + "tagName": { "type": "string", - "description": "The format of the What-If results", - "enum": [ - "ResourceIdOnly", - "FullResourcePayloads" - ], - "x-ms-enum": { - "name": "WhatIfResultFormat", - "modelAsString": false - } + "description": "The tag name." + }, + "tagValue": { + "type": "string", + "description": "The tag value." } }, - "description": "Deployment What-If operation settings." + "description": "Resource group filter." }, "CloudError": { "x-ms-external": true, @@ -5085,321 +2425,25 @@ }, "x-ms-identifiers": [ "resourceType" - ], - "description": "The collection of provider resource types." - }, - "providerAuthorizationConsentState": { - "type": "string", - "enum": [ - "NotSpecified", - "Required", - "NotRequired", - "Consented" - ], - "description": "The provider authorization consent state.", - "x-ms-enum": { - "name": "ProviderAuthorizationConsentState", - "modelAsString": true - } - } - }, - "description": "Resource provider information." - }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "type": "string", - "readOnly": true, - "description": "Denotes the state of provisioning.", - "enum": [ - "NotSpecified", - "Accepted", - "Running", - "Ready", - "Creating", - "Created", - "Deleting", - "Deleted", - "Canceled", - "Failed", - "Succeeded", - "Updating" - ], - "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true - } - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "readOnly": true, - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "templateLink": { - "readOnly": true, - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template." - }, - "parameters": { - "readOnly": true, - "type": "object", - "description": "Deployment parameters. " - }, - "parametersLink": { - "readOnly": true, - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. " - }, - "mode": { - "readOnly": true, - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "readOnly": true, - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "readOnly": true, - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "templateHash": { - "readOnly": true, - "type": "string", - "description": "The hash produced for the template." - }, - "outputResources": { - "readOnly": true, - "type": "array", - "description": "Array of provisioned resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of provisioned resources." - } - }, - "validatedResources": { - "readOnly": true, - "type": "array", - "description": "Array of validated resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of validated resources." - } - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "ResourceReference": { - "description": "The resource Id model.", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The fully qualified resource Id." - } - } - }, - "OnErrorDeployment": { - "properties": { - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior." - }, - "OnErrorDeploymentExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning for the on error deployment." - }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The name of the deployment." - }, - "type": { - "readOnly": true, - "type": "string", - "description": "The type of the deployment." - }, - "location": { - "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentExtended" - }, - "description": "An array of deployments." + ], + "description": "The collection of provider resource types." }, - "nextLink": { - "readOnly": true, + "providerAuthorizationConsentState": { "type": "string", - "description": "The URL to use for getting the next set of results." + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } } }, - "description": "List of deployments." + "description": "Resource provider information." }, "ProviderListResult": { "properties": { @@ -5844,182 +2888,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningOperation": { - "readOnly": true, - "type": "string", - "description": "The name of the current provisioning operation.", - "enum": [ - "NotSpecified", - "Create", - "Delete", - "Waiting", - "AzureAsyncOperationWaiting", - "ResourceCacheWaiting", - "Action", - "Read", - "EvaluateDeploymentOutput", - "DeploymentCleanup" - ], - "x-ms-enum": { - "name": "ProvisioningOperation", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "The provisioning operation is not specified." - }, - { - "value": "Create", - "description": "The provisioning operation is create." - }, - { - "value": "Delete", - "description": "The provisioning operation is delete." - }, - { - "value": "Waiting", - "description": "The provisioning operation is waiting." - }, - { - "value": "AzureAsyncOperationWaiting", - "description": "The provisioning operation is waiting Azure async operation." - }, - { - "value": "ResourceCacheWaiting", - "description": "The provisioning operation is waiting for resource cache." - }, - { - "value": "Action", - "description": "The provisioning operation is action." - }, - { - "value": "Read", - "description": "The provisioning operation is read." - }, - { - "value": "EvaluateDeploymentOutput", - "description": "The provisioning operation is evaluate output." - }, - { - "value": "DeploymentCleanup", - "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." - } - ] - } - }, - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." - }, - "statusMessage": { - "readOnly": true, - "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", - "$ref": "#/definitions/StatusMessage" - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -6158,203 +3026,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, - "WhatIfPropertyChange": { - "required": [ - "path", - "propertyChangeType" - ], - "properties": { - "path": { - "type": "string", - "description": "The path of the property." - }, - "propertyChangeType": { - "type": "string", - "description": "The type of property change.", - "enum": [ - "Create", - "Delete", - "Modify", - "Array", - "NoEffect" - ], - "x-ms-enum": { - "name": "PropertyChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." - }, - { - "value": "Modify", - "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." - }, - { - "value": "Array", - "description": "The property is an array and contains nested changes." - }, - { - "value": "NoEffect", - "description": "The property will not be set or updated." - } - ] - } - }, - "before": { - "type": "object", - "description": "The value of the property before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The value of the property after the deployment is executed." - }, - "children": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "Nested property changes." - } - }, - "description": "The predicted change to the resource property." - }, - "WhatIfChange": { - "description": "Information about a single resource change predicted by What-If operation.", - "required": [ - "resourceId", - "changeType" - ], - "properties": { - "resourceId": { - "type": "string", - "description": "Resource ID" - }, - "changeType": { - "type": "string", - "description": "Type of change that will be made to the resource when the deployment is executed.", - "enum": [ - "Create", - "Delete", - "Ignore", - "Deploy", - "NoChange", - "Modify", - "Unsupported" - ], - "x-ms-enum": { - "name": "ChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." - }, - { - "value": "Ignore", - "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." - }, - { - "value": "Deploy", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." - }, - { - "value": "NoChange", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." - }, - { - "value": "Modify", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." - }, - { - "value": "Unsupported", - "description": "The resource is not supported by What-If." - } - ] - } - }, - "unsupportedReason": { - "type": "string", - "description": "The explanation about why the resource is unsupported by What-If." - }, - "before": { - "type": "object", - "description": "The snapshot of the resource before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The predicted snapshot of the resource after the deployment is executed." - }, - "delta": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "The predicted changes to resource properties." - } - } - }, - "WhatIfOperationProperties": { - "description": "Deployment operation properties.", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "x-ms-identifiers": [ - "resourceId", - "changeType" - ], - "description": "List of resource changes predicted by What-If operation." - } - } - }, - "WhatIfOperationResult": { - "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", - "properties": { - "status": { - "type": "string", - "description": "Status of the What-If operation." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/WhatIfOperationProperties", - "description": "What-If operation properties." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error when What-If operation fails." - } - } - }, "Tags": { "description": "A dictionary of name and value pairs.", "properties": { @@ -6571,38 +3242,6 @@ } } }, - "StatusMessage": { - "type": "object", - "description": "Operation status message object.", - "properties": { - "status": { - "type": "string", - "description": "Status of the deployment operation." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The error reported by the operation." - } - } - }, - "ExpressionEvaluationOptions": { - "properties": { - "scope": { - "type": "string", - "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", - "enum": [ - "NotSpecified", - "Outer", - "Inner" - ], - "x-ms-enum": { - "name": "ExpressionEvaluationOptionsScopeType", - "modelAsString": true - } - } - }, - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." - }, "ZoneMapping": { "type": "object", "properties": { @@ -6646,17 +3285,6 @@ "type": "string", "description": "The Microsoft Azure subscription ID." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/resources.json index ba2170431491..fd1b8df40b33 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2022-09-01/resources.json @@ -65,31 +65,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -97,32 +100,34 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true - }, - "head": { + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CheckExistenceAtScope", - "description": "Checks whether the deployment exists.", + "operationId": "Providers_RegisterAtManagementGroupScope", + "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/GroupIdParameter" } ], "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "200": { + "description": "OK - Returns information about the resource provider." }, "default": { "description": "Error response describing why the operation failed.", @@ -131,45 +136,35 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtScope", - "summary": "Deploys resources at a given scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_ProviderPermissions", + "description": "Get the provider permissions.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information on the provider permissions.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderPermissionListResult" } }, "default": { @@ -179,35 +174,49 @@ } } }, - "x-ms-long-running-operation": true, "x-ms-examples": { - "Create deployment at a given scope.": { - "$ref": "./examples/PutDeploymentAtScope.json" + "Get provider resource types.": { + "$ref": "./examples/GetProviderPermissions.json" } } - }, - "get": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtScope", - "description": "Gets a deployment.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "properties", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ProviderRegistrationRequest" + }, + "description": "The third party consent for S2S." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } }, "default": { @@ -219,28 +228,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/subscriptions/{subscriptionId}/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -248,32 +263,31 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get providers.": { + "$ref": "./examples/GetProviders.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -281,18 +295,9 @@ ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -301,32 +306,46 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -335,44 +354,48 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get provider.": { + "$ref": "./examples/GetProvider.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ListAtScope", - "description": "Get all the deployments at the given scope.", + "operationId": "ProviderResourceTypes_List", + "description": "List the resource types for a specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns resource types information for the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ProviderResourceTypeListResult" } }, "default": { @@ -382,34 +405,113 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-examples": { + "Get provider resource types.": { + "$ref": "./examples/GetProviderResourceTypes.json" + } + } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtTenantScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "x-ms-examples": { + "Get a resource provider at tenant scope": { + "$ref": "./examples/GetNamedProviderAtTenant.json" + } + }, + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, - "204": { - "description": "No Content" + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { + "get": { + "tags": [ + "ResourceGroups" + ], + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resources", + "schema": { + "$ref": "#/definitions/ResourceListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -418,20 +520,35 @@ } } }, - "x-ms-long-running-operation": true - }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistenceAtTenantScope", - "description": "Checks whether the deployment exists.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -451,39 +568,53 @@ }, "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdateAtTenantScope", - "summary": "Deploys resources at tenant scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -492,34 +623,54 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at tenant scope.": { - "$ref": "./examples/PutDeploymentAtTenant.json" - } } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtTenantScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "forceDeletionTypes", + "in": "query", + "required": false, + "type": "string", + "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], + "x-ms-examples": { + "Force delete all the Virtual Machines in a resource group": { + "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" + }, + "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { + "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" + } + }, "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "description": "OK" + }, + "202": { + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -527,28 +678,39 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtTenantScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -557,47 +719,46 @@ } } } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtTenantScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -609,49 +770,50 @@ } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_WhatIfAtTenantScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/ExportTemplateRequest" }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "Parameters for exporting the template." } ], + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" + }, + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + } + }, "responses": { "200": { - "description": "OK - Returns What-If operation status", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/WhatIfOperationResult" + "$ref": "#/definitions/ResourceGroupExportResult" } }, "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -660,62 +822,26 @@ } } }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" - } - }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { "final-state-via": "location" } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtTenantScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtTenantScope", - "description": "Get all the deployments at the tenant scope.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -723,17 +849,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } }, "default": { @@ -746,31 +875,47 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be moved.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" @@ -783,77 +928,102 @@ } }, "x-ms-long-running-operation": true - }, - "head": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - }, - "put": { + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resources": { + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Additional parameters supplied to the operation." + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of recommendations per page if a paged version of this API is being used." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -863,69 +1033,79 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, - "get": { + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "204": { "description": "No Content" }, + "404": { + "description": "Not Found" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -933,2725 +1113,61 @@ } } } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtManagementGroupScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtSubscriptionScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to What If." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at subscription scope": { - "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - }, - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" - }, - "Create a deployment that will deploy a template with a uri and queryString": { - "$ref": "./examples/PutDeploymentResourceGroup.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIf", - "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at resource group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_RegisterAtManagementGroupScope", - "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/GroupIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ProviderPermissions", - "description": "Get the provider permissions.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information on the provider permissions.", - "schema": { - "$ref": "#/definitions/ProviderPermissionListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderPermissions.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "properties", - "in": "body", - "required": false, - "schema": { - "$ref": "#/definitions/ProviderRegistrationRequest" - }, - "description": "The third party consent for S2S." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Get providers.": { - "$ref": "./examples/GetProviders.json" - } - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider.": { - "$ref": "./examples/GetProvider.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "ProviderResourceTypes_List", - "description": "List the resource types for a specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns resource types information for the resource provider.", - "schema": { - "$ref": "#/definitions/ProviderResourceTypeListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderResourceTypes.json" - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "x-ms-examples": { - "Get a resource provider at tenant scope": { - "$ref": "./examples/GetNamedProviderAtTenant.json" - } - }, - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "forceDeletionTypes", - "in": "query", - "required": false, - "type": "string", - "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "x-ms-examples": { - "Force delete all the Virtual Machines in a resource group": { - "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" - }, - "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { - "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" - } - }, - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be moved.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of recommendations per page if a paged version of this API is being used." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to create." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Update", - "description": "Updates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to update.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to update." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Get", - "description": "Gets a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{resourceId}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", - "parameters": [ - { - "name": "resourceId", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "summary": "Deletes a predefined tag value for a predefined tag name.", - "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", - "parameters": [ + "description": "The namespace of the resource provider." + }, { - "name": "tagName", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "name": "tagValue", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to delete." + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to delete." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3659,10 +1175,13 @@ ], "responses": { "200": { - "description": "Predefined tag value successfully deleted." + "description": "OK" + }, + "202": { + "description": "Accepted" }, "204": { - "description": "Predefined tag value did not exist." + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3670,77 +1189,72 @@ "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-long-running-operation": true }, "put": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_CreateOrUpdateValue", - "summary": "Creates a predefined value for a predefined tag name.", - "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "name": "tagValue", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to create." + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value already exists. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a predefined tag name.", - "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", - "parameters": [ { - "name": "tagName", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag to create." + "description": "The name of the resource to create." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3748,74 +1262,92 @@ ], "responses": { "200": { - "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagDetails" + "$ref": "#/definitions/GenericResource" } }, "201": { - "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagDetails" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-long-running-operation": true }, - "delete": { + "patch": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_Delete", - "summary": "Deletes a predefined tag name.", - "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name successfully deleted." + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "204": { - "description": "Predefined tag name did not exist." + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "summary": "Gets a summary of tag usage under the subscription.", - "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", - "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3823,11 +1355,14 @@ ], "responses": { "200": { - "description": "OK - Returns an array of tag names and values.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3835,41 +1370,72 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the resource to get." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -3881,38 +1447,37 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + "/{resourceId}": { + "head": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -3920,40 +1485,41 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtTenantScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "resourceId", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3961,39 +1527,58 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtTenantScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -4001,83 +1586,89 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", - "in": "path", + "name": "api-version", + "in": "query", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -4086,29 +1677,31 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", + "operationId": "Tags_DeleteValue", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "operationId", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4119,10 +1712,10 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "Predefined tag value successfully deleted." + }, + "204": { + "description": "Predefined tag value did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4131,26 +1724,28 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_CreateOrUpdateValue", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4161,9 +1756,15 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "Predefined tag value already exists. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/TagValue" } }, "default": { @@ -4172,39 +1773,24 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4215,9 +1801,15 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" } }, "default": { @@ -4227,36 +1819,21 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_Delete", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4267,10 +1844,10 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "description": "Predefined tag name successfully deleted." + }, + "204": { + "description": "Predefined tag name did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4278,43 +1855,30 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/TemplateHashResult" + "$ref": "#/definitions/TagsListResult" } }, "default": { @@ -4323,6 +1887,9 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -4509,327 +2076,49 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Update tags on a resource": { - "$ref": "./examples/DeleteTagsResource.json" - }, - "Update tags on a subscription": { - "$ref": "./examples/DeleteTagsSubscription.json" - } - } - } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy. Use either the uri or id property, but not both." - }, - "id": { - "type": "string", - "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." - }, - "relativePath": { - "type": "string", - "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - }, - "queryString": { - "type": "string", - "description": "The query string (for example, a SAS token) to be used with the templateLink URI." - } - }, - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/DeploymentParameter" - }, - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - }, - "expressionEvaluationOptions": { - "$ref": "#/definitions/ExpressionEvaluationOptions", - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DeploymentParameter": { - "type": "object", - "properties": { - "value": { - "description": "Input value to the parameter ." - }, - "reference": { - "$ref": "#/definitions/KeyVaultParameterReference", - "description": "Azure Key Vault parameter reference." - } - }, - "description": "Deployment parameter for the template." - }, - "KeyVaultParameterReference": { - "type": "object", - "properties": { - "keyVault": { - "$ref": "#/definitions/KeyVaultReference", - "description": "Azure Key Vault reference." - }, - "secretName": { - "type": "string", - "description": "Azure Key Vault secret name." - }, - "secretVersion": { - "type": "string", - "description": "Azure Key Vault secret version." - } - }, - "required": [ - "keyVault", - "secretName" - ], - "description": "Azure Key Vault parameter reference." - }, - "KeyVaultReference": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Azure Key Vault resource id." - } - }, - "required": [ - "id" - ], - "description": "Azure Key Vault reference." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - }, - "description": "The debug setting." - }, - "Deployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "ScopedDeployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update tags on a resource": { + "$ref": "./examples/DeleteTagsResource.json" + }, + "Update tags on a subscription": { + "$ref": "./examples/DeleteTagsSubscription.json" + } } - }, - "description": "The deployment export result. " - }, - "DeploymentWhatIf": { + } + } + }, + "definitions": { + "GenericResourceFilter": { "properties": { - "location": { + "resourceType": { "type": "string", - "description": "The location to store the deployment data." + "description": "The resource type." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "ScopedDeploymentWhatIf": { - "properties": { - "location": { + "tagname": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "DeploymentWhatIfProperties": { - "properties": { - "whatIfSettings": { - "$ref": "#/definitions/DeploymentWhatIfSettings", - "description": "Optional What-If operation settings." + "tagvalue": { + "type": "string", + "description": "The tag value." } }, - "allOf": [ - { - "$ref": "#/definitions/DeploymentProperties" - } - ], - "description": "Deployment What-if properties." + "description": "Resource filter." }, - "DeploymentWhatIfSettings": { + "ResourceGroupFilter": { "properties": { - "resultFormat": { + "tagName": { "type": "string", - "description": "The format of the What-If results", - "enum": [ - "ResourceIdOnly", - "FullResourcePayloads" - ], - "x-ms-enum": { - "name": "WhatIfResultFormat", - "modelAsString": false - } + "description": "The tag name." + }, + "tagValue": { + "type": "string", + "description": "The tag value." } }, - "description": "Deployment What-If operation settings." + "description": "Resource group filter." }, "CloudError": { "x-ms-external": true, @@ -5182,321 +2471,25 @@ }, "x-ms-identifiers": [ "resourceType" - ], - "description": "The collection of provider resource types." - }, - "providerAuthorizationConsentState": { - "type": "string", - "enum": [ - "NotSpecified", - "Required", - "NotRequired", - "Consented" - ], - "description": "The provider authorization consent state.", - "x-ms-enum": { - "name": "ProviderAuthorizationConsentState", - "modelAsString": true - } - } - }, - "description": "Resource provider information." - }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "type": "string", - "readOnly": true, - "description": "Denotes the state of provisioning.", - "enum": [ - "NotSpecified", - "Accepted", - "Running", - "Ready", - "Creating", - "Created", - "Deleting", - "Deleted", - "Canceled", - "Failed", - "Succeeded", - "Updating" - ], - "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true - } - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "readOnly": true, - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "templateLink": { - "readOnly": true, - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template." - }, - "parameters": { - "readOnly": true, - "type": "object", - "description": "Deployment parameters. " - }, - "parametersLink": { - "readOnly": true, - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. " - }, - "mode": { - "readOnly": true, - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "readOnly": true, - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "readOnly": true, - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "templateHash": { - "readOnly": true, - "type": "string", - "description": "The hash produced for the template." - }, - "outputResources": { - "readOnly": true, - "type": "array", - "description": "Array of provisioned resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of provisioned resources." - } - }, - "validatedResources": { - "readOnly": true, - "type": "array", - "description": "Array of validated resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of validated resources." - } - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "ResourceReference": { - "description": "The resource Id model.", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The fully qualified resource Id." - } - } - }, - "OnErrorDeployment": { - "properties": { - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior." - }, - "OnErrorDeploymentExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning for the on error deployment." - }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The name of the deployment." - }, - "type": { - "readOnly": true, - "type": "string", - "description": "The type of the deployment." - }, - "location": { - "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentExtended" - }, - "description": "An array of deployments." + ], + "description": "The collection of provider resource types." }, - "nextLink": { - "readOnly": true, + "providerAuthorizationConsentState": { "type": "string", - "description": "The URL to use for getting the next set of results." + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } } }, - "description": "List of deployments." + "description": "Resource provider information." }, "ProviderListResult": { "properties": { @@ -5941,182 +2934,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningOperation": { - "readOnly": true, - "type": "string", - "description": "The name of the current provisioning operation.", - "enum": [ - "NotSpecified", - "Create", - "Delete", - "Waiting", - "AzureAsyncOperationWaiting", - "ResourceCacheWaiting", - "Action", - "Read", - "EvaluateDeploymentOutput", - "DeploymentCleanup" - ], - "x-ms-enum": { - "name": "ProvisioningOperation", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "The provisioning operation is not specified." - }, - { - "value": "Create", - "description": "The provisioning operation is create." - }, - { - "value": "Delete", - "description": "The provisioning operation is delete." - }, - { - "value": "Waiting", - "description": "The provisioning operation is waiting." - }, - { - "value": "AzureAsyncOperationWaiting", - "description": "The provisioning operation is waiting Azure async operation." - }, - { - "value": "ResourceCacheWaiting", - "description": "The provisioning operation is waiting for resource cache." - }, - { - "value": "Action", - "description": "The provisioning operation is action." - }, - { - "value": "Read", - "description": "The provisioning operation is read." - }, - { - "value": "EvaluateDeploymentOutput", - "description": "The provisioning operation is evaluate output." - }, - { - "value": "DeploymentCleanup", - "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." - } - ] - } - }, - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." - }, - "statusMessage": { - "readOnly": true, - "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", - "$ref": "#/definitions/StatusMessage" - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -6255,203 +3072,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, - "WhatIfPropertyChange": { - "required": [ - "path", - "propertyChangeType" - ], - "properties": { - "path": { - "type": "string", - "description": "The path of the property." - }, - "propertyChangeType": { - "type": "string", - "description": "The type of property change.", - "enum": [ - "Create", - "Delete", - "Modify", - "Array", - "NoEffect" - ], - "x-ms-enum": { - "name": "PropertyChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." - }, - { - "value": "Modify", - "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." - }, - { - "value": "Array", - "description": "The property is an array and contains nested changes." - }, - { - "value": "NoEffect", - "description": "The property will not be set or updated." - } - ] - } - }, - "before": { - "type": "object", - "description": "The value of the property before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The value of the property after the deployment is executed." - }, - "children": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "Nested property changes." - } - }, - "description": "The predicted change to the resource property." - }, - "WhatIfChange": { - "description": "Information about a single resource change predicted by What-If operation.", - "required": [ - "resourceId", - "changeType" - ], - "properties": { - "resourceId": { - "type": "string", - "description": "Resource ID" - }, - "changeType": { - "type": "string", - "description": "Type of change that will be made to the resource when the deployment is executed.", - "enum": [ - "Create", - "Delete", - "Ignore", - "Deploy", - "NoChange", - "Modify", - "Unsupported" - ], - "x-ms-enum": { - "name": "ChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." - }, - { - "value": "Ignore", - "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." - }, - { - "value": "Deploy", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." - }, - { - "value": "NoChange", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." - }, - { - "value": "Modify", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." - }, - { - "value": "Unsupported", - "description": "The resource is not supported by What-If." - } - ] - } - }, - "unsupportedReason": { - "type": "string", - "description": "The explanation about why the resource is unsupported by What-If." - }, - "before": { - "type": "object", - "description": "The snapshot of the resource before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The predicted snapshot of the resource after the deployment is executed." - }, - "delta": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "The predicted changes to resource properties." - } - } - }, - "WhatIfOperationProperties": { - "description": "Deployment operation properties.", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "x-ms-identifiers": [ - "resourceId", - "changeType" - ], - "description": "List of resource changes predicted by What-If operation." - } - } - }, - "WhatIfOperationResult": { - "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", - "properties": { - "status": { - "type": "string", - "description": "Status of the What-If operation." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/WhatIfOperationProperties", - "description": "What-If operation properties." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error when What-If operation fails." - } - } - }, "Tags": { "description": "A dictionary of name and value pairs.", "properties": { @@ -6668,38 +3288,6 @@ } } }, - "StatusMessage": { - "type": "object", - "description": "Operation status message object.", - "properties": { - "status": { - "type": "string", - "description": "Status of the deployment operation." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The error reported by the operation." - } - } - }, - "ExpressionEvaluationOptions": { - "properties": { - "scope": { - "type": "string", - "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", - "enum": [ - "NotSpecified", - "Outer", - "Inner" - ], - "x-ms-enum": { - "name": "ExpressionEvaluationOptionsScopeType", - "modelAsString": true - } - } - }, - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." - }, "ZoneMapping": { "type": "object", "properties": { @@ -6743,17 +3331,6 @@ "type": "string", "description": "The Microsoft Azure subscription ID." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/resources.json index 2ce26553ff84..43ab8fb20826 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2023-07-01/resources.json @@ -65,31 +65,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -97,32 +100,34 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true - }, - "head": { + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CheckExistenceAtScope", - "description": "Checks whether the deployment exists.", + "operationId": "Providers_RegisterAtManagementGroupScope", + "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/GroupIdParameter" } ], "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "200": { + "description": "OK - Returns information about the resource provider." }, "default": { "description": "Error response describing why the operation failed.", @@ -131,45 +136,35 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtScope", - "summary": "Deploys resources at a given scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_ProviderPermissions", + "description": "Get the provider permissions.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information on the provider permissions.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderPermissionListResult" } }, "default": { @@ -179,35 +174,49 @@ } } }, - "x-ms-long-running-operation": true, "x-ms-examples": { - "Create deployment at a given scope.": { - "$ref": "./examples/PutDeploymentAtScope.json" + "Get provider resource types.": { + "$ref": "./examples/GetProviderPermissions.json" } } - }, - "get": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtScope", - "description": "Gets a deployment.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "properties", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ProviderRegistrationRequest" + }, + "description": "The third party consent for S2S." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } }, "default": { @@ -219,28 +228,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/subscriptions/{subscriptionId}/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -248,32 +263,31 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get providers.": { + "$ref": "./examples/GetProviders.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -281,18 +295,9 @@ ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -301,32 +306,46 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -335,44 +354,48 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get provider.": { + "$ref": "./examples/GetProvider.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ListAtScope", - "description": "Get all the deployments at the given scope.", + "operationId": "ProviderResourceTypes_List", + "description": "List the resource types for a specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns resource types information for the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ProviderResourceTypeListResult" } }, "default": { @@ -382,34 +405,113 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-examples": { + "Get provider resource types.": { + "$ref": "./examples/GetProviderResourceTypes.json" + } + } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtTenantScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "x-ms-examples": { + "Get a resource provider at tenant scope": { + "$ref": "./examples/GetNamedProviderAtTenant.json" + } + }, + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, - "204": { - "description": "No Content" + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { + "get": { + "tags": [ + "ResourceGroups" + ], + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resources", + "schema": { + "$ref": "#/definitions/ResourceListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -418,20 +520,35 @@ } } }, - "x-ms-long-running-operation": true - }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistenceAtTenantScope", - "description": "Checks whether the deployment exists.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -451,39 +568,53 @@ }, "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdateAtTenantScope", - "summary": "Deploys resources at tenant scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -492,33 +623,59 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at tenant scope.": { - "$ref": "./examples/PutDeploymentAtTenant.json" - } } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtTenantScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "forceDeletionTypes", + "in": "query", + "required": false, + "type": "string", + "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], + "x-ms-examples": { + "Force delete all the Virtual Machines in a resource group": { + "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" + }, + "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { + "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" + } + }, "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" + "description": "OK" + }, + "202": { + "description": "Accepted", + "headers": { + "location": { + "type": "string", + "description": "URL to get status of this long-running operation." + } } }, "default": { @@ -527,28 +684,39 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtTenantScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -557,47 +725,46 @@ } } } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtTenantScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -609,113 +776,78 @@ } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_WhatIfAtTenantScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/ExportTemplateRequest" }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "Parameters for exporting the template." } ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtTenantScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/ResourceGroupExportResult" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" } } }, - "/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtTenantScope", - "description": "Get all the deployments at the tenant scope.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -723,17 +855,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } }, "default": { @@ -746,31 +881,47 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be moved.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" @@ -783,77 +934,102 @@ } }, "x-ms-long-running-operation": true - }, - "head": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - }, - "put": { + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resources": { + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Additional parameters supplied to the operation." + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of recommendations per page if a paged version of this API is being used." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -863,69 +1039,79 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, - "get": { + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "204": { "description": "No Content" }, + "404": { + "description": "Not Found" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -933,2731 +1119,61 @@ } } } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtManagementGroupScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtSubscriptionScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to What If." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at subscription scope": { - "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - }, - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" - }, - "Create a deployment that will deploy a template with a uri and queryString": { - "$ref": "./examples/PutDeploymentResourceGroup.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIf", - "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at resource group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_RegisterAtManagementGroupScope", - "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/GroupIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ProviderPermissions", - "description": "Get the provider permissions.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information on the provider permissions.", - "schema": { - "$ref": "#/definitions/ProviderPermissionListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderPermissions.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "properties", - "in": "body", - "required": false, - "schema": { - "$ref": "#/definitions/ProviderRegistrationRequest" - }, - "description": "The third party consent for S2S." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Get providers.": { - "$ref": "./examples/GetProviders.json" - } - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider.": { - "$ref": "./examples/GetProvider.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "ProviderResourceTypes_List", - "description": "List the resource types for a specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns resource types information for the resource provider.", - "schema": { - "$ref": "#/definitions/ProviderResourceTypeListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderResourceTypes.json" - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "x-ms-examples": { - "Get a resource provider at tenant scope": { - "$ref": "./examples/GetNamedProviderAtTenant.json" - } - }, - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "forceDeletionTypes", - "in": "query", - "required": false, - "type": "string", - "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "x-ms-examples": { - "Force delete all the Virtual Machines in a resource group": { - "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" - }, - "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { - "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" - } - }, - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted", - "headers": { - "location": { - "type": "string", - "description": "URL to get status of this long-running operation." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be moved.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of recommendations per page if a paged version of this API is being used." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to create." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Update", - "description": "Updates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to update.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to update." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Get", - "description": "Gets a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{resourceId}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ - { - "name": "resourceId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", - "parameters": [ { - "name": "resourceId", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "summary": "Deletes a predefined tag value for a predefined tag name.", - "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", - "parameters": [ + "description": "The namespace of the resource provider." + }, { - "name": "tagName", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "name": "tagValue", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to delete." + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to delete." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3665,10 +1181,13 @@ ], "responses": { "200": { - "description": "Predefined tag value successfully deleted." + "description": "OK" + }, + "202": { + "description": "Accepted" }, "204": { - "description": "Predefined tag value did not exist." + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3676,77 +1195,72 @@ "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-long-running-operation": true }, "put": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_CreateOrUpdateValue", - "summary": "Creates a predefined value for a predefined tag name.", - "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "name": "tagValue", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to create." + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value already exists. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a predefined tag name.", - "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", - "parameters": [ { - "name": "tagName", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag to create." + "description": "The name of the resource to create." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3754,74 +1268,92 @@ ], "responses": { "200": { - "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagDetails" + "$ref": "#/definitions/GenericResource" } }, "201": { - "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagDetails" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-long-running-operation": true }, - "delete": { + "patch": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_Delete", - "summary": "Deletes a predefined tag name.", - "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name successfully deleted." + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "204": { - "description": "Predefined tag name did not exist." + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "summary": "Gets a summary of tag usage under the subscription.", - "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", - "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3829,11 +1361,14 @@ ], "responses": { "200": { - "description": "OK - Returns an array of tag names and values.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3841,41 +1376,72 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the resource to get." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -3887,38 +1453,37 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + "/{resourceId}": { + "head": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -3926,40 +1491,41 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtTenantScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "resourceId", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3967,39 +1533,58 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtTenantScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -4007,83 +1592,89 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", - "in": "path", + "name": "api-version", + "in": "query", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -4092,29 +1683,31 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", + "operationId": "Tags_DeleteValue", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "operationId", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4125,10 +1718,10 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "Predefined tag value successfully deleted." + }, + "204": { + "description": "Predefined tag value did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4137,26 +1730,28 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_CreateOrUpdateValue", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4167,9 +1762,15 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "Predefined tag value already exists. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/TagValue" } }, "default": { @@ -4178,39 +1779,24 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4221,9 +1807,15 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" } }, "default": { @@ -4233,36 +1825,21 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_Delete", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4273,10 +1850,10 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "description": "Predefined tag name successfully deleted." + }, + "204": { + "description": "Predefined tag name did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4284,43 +1861,30 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/TemplateHashResult" + "$ref": "#/definitions/TagsListResult" } }, "default": { @@ -4329,6 +1893,9 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -4515,327 +2082,49 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Update tags on a resource": { - "$ref": "./examples/DeleteTagsResource.json" - }, - "Update tags on a subscription": { - "$ref": "./examples/DeleteTagsSubscription.json" - } - } - } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy. Use either the uri or id property, but not both." - }, - "id": { - "type": "string", - "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." - }, - "relativePath": { - "type": "string", - "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - }, - "queryString": { - "type": "string", - "description": "The query string (for example, a SAS token) to be used with the templateLink URI." - } - }, - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/DeploymentParameter" - }, - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - }, - "expressionEvaluationOptions": { - "$ref": "#/definitions/ExpressionEvaluationOptions", - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DeploymentParameter": { - "type": "object", - "properties": { - "value": { - "description": "Input value to the parameter ." - }, - "reference": { - "$ref": "#/definitions/KeyVaultParameterReference", - "description": "Azure Key Vault parameter reference." - } - }, - "description": "Deployment parameter for the template." - }, - "KeyVaultParameterReference": { - "type": "object", - "properties": { - "keyVault": { - "$ref": "#/definitions/KeyVaultReference", - "description": "Azure Key Vault reference." - }, - "secretName": { - "type": "string", - "description": "Azure Key Vault secret name." - }, - "secretVersion": { - "type": "string", - "description": "Azure Key Vault secret version." - } - }, - "required": [ - "keyVault", - "secretName" - ], - "description": "Azure Key Vault parameter reference." - }, - "KeyVaultReference": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Azure Key Vault resource id." - } - }, - "required": [ - "id" - ], - "description": "Azure Key Vault reference." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - }, - "description": "The debug setting." - }, - "Deployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "ScopedDeployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update tags on a resource": { + "$ref": "./examples/DeleteTagsResource.json" + }, + "Update tags on a subscription": { + "$ref": "./examples/DeleteTagsSubscription.json" + } } - }, - "description": "The deployment export result. " - }, - "DeploymentWhatIf": { + } + } + }, + "definitions": { + "GenericResourceFilter": { "properties": { - "location": { + "resourceType": { "type": "string", - "description": "The location to store the deployment data." + "description": "The resource type." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "ScopedDeploymentWhatIf": { - "properties": { - "location": { + "tagname": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "DeploymentWhatIfProperties": { - "properties": { - "whatIfSettings": { - "$ref": "#/definitions/DeploymentWhatIfSettings", - "description": "Optional What-If operation settings." + "tagvalue": { + "type": "string", + "description": "The tag value." } }, - "allOf": [ - { - "$ref": "#/definitions/DeploymentProperties" - } - ], - "description": "Deployment What-if properties." + "description": "Resource filter." }, - "DeploymentWhatIfSettings": { + "ResourceGroupFilter": { "properties": { - "resultFormat": { + "tagName": { "type": "string", - "description": "The format of the What-If results", - "enum": [ - "ResourceIdOnly", - "FullResourcePayloads" - ], - "x-ms-enum": { - "name": "WhatIfResultFormat", - "modelAsString": false - } + "description": "The tag name." + }, + "tagValue": { + "type": "string", + "description": "The tag value." } }, - "description": "Deployment What-If operation settings." + "description": "Resource group filter." }, "CloudError": { "x-ms-external": true, @@ -5188,321 +2477,25 @@ }, "x-ms-identifiers": [ "resourceType" - ], - "description": "The collection of provider resource types." - }, - "providerAuthorizationConsentState": { - "type": "string", - "enum": [ - "NotSpecified", - "Required", - "NotRequired", - "Consented" - ], - "description": "The provider authorization consent state.", - "x-ms-enum": { - "name": "ProviderAuthorizationConsentState", - "modelAsString": true - } - } - }, - "description": "Resource provider information." - }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "type": "string", - "readOnly": true, - "description": "Denotes the state of provisioning.", - "enum": [ - "NotSpecified", - "Accepted", - "Running", - "Ready", - "Creating", - "Created", - "Deleting", - "Deleted", - "Canceled", - "Failed", - "Succeeded", - "Updating" - ], - "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true - } - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "readOnly": true, - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "templateLink": { - "readOnly": true, - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template." - }, - "parameters": { - "readOnly": true, - "type": "object", - "description": "Deployment parameters. " - }, - "parametersLink": { - "readOnly": true, - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. " - }, - "mode": { - "readOnly": true, - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "readOnly": true, - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "readOnly": true, - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "templateHash": { - "readOnly": true, - "type": "string", - "description": "The hash produced for the template." - }, - "outputResources": { - "readOnly": true, - "type": "array", - "description": "Array of provisioned resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of provisioned resources." - } - }, - "validatedResources": { - "readOnly": true, - "type": "array", - "description": "Array of validated resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of validated resources." - } - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "ResourceReference": { - "description": "The resource Id model.", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The fully qualified resource Id." - } - } - }, - "OnErrorDeployment": { - "properties": { - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior." - }, - "OnErrorDeploymentExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning for the on error deployment." - }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The name of the deployment." - }, - "type": { - "readOnly": true, - "type": "string", - "description": "The type of the deployment." - }, - "location": { - "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentExtended" - }, - "description": "An array of deployments." + ], + "description": "The collection of provider resource types." }, - "nextLink": { - "readOnly": true, + "providerAuthorizationConsentState": { "type": "string", - "description": "The URL to use for getting the next set of results." + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } } }, - "description": "List of deployments." + "description": "Resource provider information." }, "ProviderListResult": { "properties": { @@ -5947,182 +2940,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningOperation": { - "readOnly": true, - "type": "string", - "description": "The name of the current provisioning operation.", - "enum": [ - "NotSpecified", - "Create", - "Delete", - "Waiting", - "AzureAsyncOperationWaiting", - "ResourceCacheWaiting", - "Action", - "Read", - "EvaluateDeploymentOutput", - "DeploymentCleanup" - ], - "x-ms-enum": { - "name": "ProvisioningOperation", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "The provisioning operation is not specified." - }, - { - "value": "Create", - "description": "The provisioning operation is create." - }, - { - "value": "Delete", - "description": "The provisioning operation is delete." - }, - { - "value": "Waiting", - "description": "The provisioning operation is waiting." - }, - { - "value": "AzureAsyncOperationWaiting", - "description": "The provisioning operation is waiting Azure async operation." - }, - { - "value": "ResourceCacheWaiting", - "description": "The provisioning operation is waiting for resource cache." - }, - { - "value": "Action", - "description": "The provisioning operation is action." - }, - { - "value": "Read", - "description": "The provisioning operation is read." - }, - { - "value": "EvaluateDeploymentOutput", - "description": "The provisioning operation is evaluate output." - }, - { - "value": "DeploymentCleanup", - "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." - } - ] - } - }, - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." - }, - "statusMessage": { - "readOnly": true, - "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", - "$ref": "#/definitions/StatusMessage" - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -6261,203 +3078,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, - "WhatIfPropertyChange": { - "required": [ - "path", - "propertyChangeType" - ], - "properties": { - "path": { - "type": "string", - "description": "The path of the property." - }, - "propertyChangeType": { - "type": "string", - "description": "The type of property change.", - "enum": [ - "Create", - "Delete", - "Modify", - "Array", - "NoEffect" - ], - "x-ms-enum": { - "name": "PropertyChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." - }, - { - "value": "Modify", - "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." - }, - { - "value": "Array", - "description": "The property is an array and contains nested changes." - }, - { - "value": "NoEffect", - "description": "The property will not be set or updated." - } - ] - } - }, - "before": { - "type": "object", - "description": "The value of the property before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The value of the property after the deployment is executed." - }, - "children": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "Nested property changes." - } - }, - "description": "The predicted change to the resource property." - }, - "WhatIfChange": { - "description": "Information about a single resource change predicted by What-If operation.", - "required": [ - "resourceId", - "changeType" - ], - "properties": { - "resourceId": { - "type": "string", - "description": "Resource ID" - }, - "changeType": { - "type": "string", - "description": "Type of change that will be made to the resource when the deployment is executed.", - "enum": [ - "Create", - "Delete", - "Ignore", - "Deploy", - "NoChange", - "Modify", - "Unsupported" - ], - "x-ms-enum": { - "name": "ChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." - }, - { - "value": "Ignore", - "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." - }, - { - "value": "Deploy", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." - }, - { - "value": "NoChange", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." - }, - { - "value": "Modify", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." - }, - { - "value": "Unsupported", - "description": "The resource is not supported by What-If." - } - ] - } - }, - "unsupportedReason": { - "type": "string", - "description": "The explanation about why the resource is unsupported by What-If." - }, - "before": { - "type": "object", - "description": "The snapshot of the resource before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The predicted snapshot of the resource after the deployment is executed." - }, - "delta": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "The predicted changes to resource properties." - } - } - }, - "WhatIfOperationProperties": { - "description": "Deployment operation properties.", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "x-ms-identifiers": [ - "resourceId", - "changeType" - ], - "description": "List of resource changes predicted by What-If operation." - } - } - }, - "WhatIfOperationResult": { - "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", - "properties": { - "status": { - "type": "string", - "description": "Status of the What-If operation." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/WhatIfOperationProperties", - "description": "What-If operation properties." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error when What-If operation fails." - } - } - }, "Tags": { "description": "A dictionary of name and value pairs.", "properties": { @@ -6674,38 +3294,6 @@ } } }, - "StatusMessage": { - "type": "object", - "description": "Operation status message object.", - "properties": { - "status": { - "type": "string", - "description": "Status of the deployment operation." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The error reported by the operation." - } - } - }, - "ExpressionEvaluationOptions": { - "properties": { - "scope": { - "type": "string", - "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", - "enum": [ - "NotSpecified", - "Outer", - "Inner" - ], - "x-ms-enum": { - "name": "ExpressionEvaluationOptionsScopeType", - "modelAsString": true - } - } - }, - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." - }, "ZoneMapping": { "type": "object", "properties": { @@ -6749,17 +3337,6 @@ "type": "string", "description": "The Microsoft Azure subscription ID." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/resources.json index b2e5d967dc0b..3c297423061c 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2024-03-01/resources.json @@ -65,31 +65,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -97,32 +100,34 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true - }, - "head": { + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CheckExistenceAtScope", - "description": "Checks whether the deployment exists.", + "operationId": "Providers_RegisterAtManagementGroupScope", + "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/GroupIdParameter" } ], "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "200": { + "description": "OK - Returns information about the resource provider." }, "default": { "description": "Error response describing why the operation failed.", @@ -131,45 +136,35 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtScope", - "summary": "Deploys resources at a given scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_ProviderPermissions", + "description": "Get the provider permissions.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information on the provider permissions.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderPermissionListResult" } }, "default": { @@ -179,35 +174,49 @@ } } }, - "x-ms-long-running-operation": true, "x-ms-examples": { - "Create deployment at a given scope.": { - "$ref": "./examples/PutDeploymentAtScope.json" + "Get provider resource types.": { + "$ref": "./examples/GetProviderPermissions.json" } } - }, - "get": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtScope", - "description": "Gets a deployment.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "properties", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ProviderRegistrationRequest" + }, + "description": "The third party consent for S2S." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } }, "default": { @@ -219,28 +228,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/subscriptions/{subscriptionId}/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -248,32 +263,31 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get providers.": { + "$ref": "./examples/GetProviders.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -281,18 +295,9 @@ ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -301,32 +306,46 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -335,44 +354,48 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get provider.": { + "$ref": "./examples/GetProvider.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ListAtScope", - "description": "Get all the deployments at the given scope.", + "operationId": "ProviderResourceTypes_List", + "description": "List the resource types for a specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns resource types information for the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ProviderResourceTypeListResult" } }, "default": { @@ -382,34 +405,113 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-examples": { + "Get provider resource types.": { + "$ref": "./examples/GetProviderResourceTypes.json" + } + } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtTenantScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "x-ms-examples": { + "Get a resource provider at tenant scope": { + "$ref": "./examples/GetNamedProviderAtTenant.json" + } + }, + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, - "204": { - "description": "No Content" + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { + "get": { + "tags": [ + "ResourceGroups" + ], + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resources", + "schema": { + "$ref": "#/definitions/ResourceListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -418,20 +520,35 @@ } } }, - "x-ms-long-running-operation": true - }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistenceAtTenantScope", - "description": "Checks whether the deployment exists.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -451,39 +568,53 @@ }, "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdateAtTenantScope", - "summary": "Deploys resources at tenant scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -492,33 +623,59 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at tenant scope.": { - "$ref": "./examples/PutDeploymentAtTenant.json" - } } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtTenantScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "forceDeletionTypes", + "in": "query", + "required": false, + "type": "string", + "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], + "x-ms-examples": { + "Force delete all the Virtual Machines in a resource group": { + "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" + }, + "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { + "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" + } + }, "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" + "description": "OK" + }, + "202": { + "description": "Accepted", + "headers": { + "location": { + "type": "string", + "description": "URL to get status of this long-running operation." + } } }, "default": { @@ -527,28 +684,39 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtTenantScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -557,47 +725,46 @@ } } } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtTenantScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -609,113 +776,81 @@ } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_WhatIfAtTenantScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/ExportTemplateRequest" }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "Parameters for exporting the template." } ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } + "x-ms-examples": { + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" + "Export a resource group as Bicep": { + "$ref": "./examples/ExportResourceGroupAsBicep.json" } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtTenantScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/ResourceGroupExportResult" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" } } }, - "/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtTenantScope", - "description": "Get all the deployments at the tenant scope.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -723,17 +858,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } }, "default": { @@ -746,31 +884,47 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be moved.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" @@ -783,77 +937,102 @@ } }, "x-ms-long-running-operation": true - }, - "head": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - }, - "put": { + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resources": { + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Additional parameters supplied to the operation." + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of recommendations per page if a paged version of this API is being used." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -863,69 +1042,79 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, - "get": { + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "204": { "description": "No Content" }, + "404": { + "description": "Not Found" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -933,2734 +1122,61 @@ } } } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtManagementGroupScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtSubscriptionScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to What If." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at subscription scope": { - "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - }, - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" - }, - "Create a deployment that will deploy a template with a uri and queryString": { - "$ref": "./examples/PutDeploymentResourceGroup.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "Returns the validation result.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIf", - "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at resource group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_RegisterAtManagementGroupScope", - "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/GroupIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ProviderPermissions", - "description": "Get the provider permissions.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information on the provider permissions.", - "schema": { - "$ref": "#/definitions/ProviderPermissionListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderPermissions.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "properties", - "in": "body", - "required": false, - "schema": { - "$ref": "#/definitions/ProviderRegistrationRequest" - }, - "description": "The third party consent for S2S." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Get providers.": { - "$ref": "./examples/GetProviders.json" - } - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider.": { - "$ref": "./examples/GetProvider.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "ProviderResourceTypes_List", - "description": "List the resource types for a specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns resource types information for the resource provider.", - "schema": { - "$ref": "#/definitions/ProviderResourceTypeListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderResourceTypes.json" - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "x-ms-examples": { - "Get a resource provider at tenant scope": { - "$ref": "./examples/GetNamedProviderAtTenant.json" - } - }, - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "forceDeletionTypes", - "in": "query", - "required": false, - "type": "string", - "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "x-ms-examples": { - "Force delete all the Virtual Machines in a resource group": { - "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" - }, - "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { - "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" - } - }, - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted", - "headers": { - "location": { - "type": "string", - "description": "URL to get status of this long-running operation." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - }, - "Export a resource group as Bicep": { - "$ref": "./examples/ExportResourceGroupAsBicep.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be moved.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of recommendations per page if a paged version of this API is being used." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to create." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Update", - "description": "Updates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to update.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to update." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Get", - "description": "Gets a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{resourceId}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ - { - "name": "resourceId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", - "parameters": [ { - "name": "resourceId", + "name": "resourceProviderNamespace", "in": "path", "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "summary": "Deletes a predefined tag value for a predefined tag name.", - "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", - "parameters": [ + "type": "string", + "description": "The namespace of the resource provider." + }, { - "name": "tagName", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "name": "tagValue", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to delete." + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to delete." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3668,10 +1184,13 @@ ], "responses": { "200": { - "description": "Predefined tag value successfully deleted." + "description": "OK" + }, + "202": { + "description": "Accepted" }, "204": { - "description": "Predefined tag value did not exist." + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3679,77 +1198,72 @@ "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-long-running-operation": true }, "put": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_CreateOrUpdateValue", - "summary": "Creates a predefined value for a predefined tag name.", - "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "name": "tagValue", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to create." + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value already exists. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a predefined tag name.", - "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", - "parameters": [ { - "name": "tagName", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag to create." + "description": "The name of the resource to create." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3757,74 +1271,92 @@ ], "responses": { "200": { - "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagDetails" + "$ref": "#/definitions/GenericResource" } }, "201": { - "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagDetails" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-long-running-operation": true }, - "delete": { + "patch": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_Delete", - "summary": "Deletes a predefined tag name.", - "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name successfully deleted." + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "204": { - "description": "Predefined tag name did not exist." + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "summary": "Gets a summary of tag usage under the subscription.", - "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", - "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3832,11 +1364,14 @@ ], "responses": { "200": { - "description": "OK - Returns an array of tag names and values.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3844,41 +1379,72 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the resource to get." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -3890,38 +1456,37 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + "/{resourceId}": { + "head": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -3929,40 +1494,41 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtTenantScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "resourceId", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3970,39 +1536,58 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtTenantScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -4010,83 +1595,89 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", - "in": "path", + "name": "api-version", + "in": "query", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -4095,29 +1686,31 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", + "operationId": "Tags_DeleteValue", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "operationId", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4128,10 +1721,10 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "Predefined tag value successfully deleted." + }, + "204": { + "description": "Predefined tag value did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4140,26 +1733,28 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_CreateOrUpdateValue", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4170,9 +1765,15 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "Predefined tag value already exists. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/TagValue" } }, "default": { @@ -4181,39 +1782,24 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4224,9 +1810,15 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" } }, "default": { @@ -4236,36 +1828,21 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_Delete", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4276,10 +1853,10 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "description": "Predefined tag name successfully deleted." + }, + "204": { + "description": "Predefined tag name did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4287,43 +1864,30 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/TemplateHashResult" + "$ref": "#/definitions/TagsListResult" } }, "default": { @@ -4332,6 +1896,9 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -4518,327 +2085,49 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Update tags on a resource": { - "$ref": "./examples/DeleteTagsResource.json" - }, - "Update tags on a subscription": { - "$ref": "./examples/DeleteTagsSubscription.json" - } - } - } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy. Use either the uri or id property, but not both." - }, - "id": { - "type": "string", - "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." - }, - "relativePath": { - "type": "string", - "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - }, - "queryString": { - "type": "string", - "description": "The query string (for example, a SAS token) to be used with the templateLink URI." - } - }, - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/DeploymentParameter" - }, - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - }, - "expressionEvaluationOptions": { - "$ref": "#/definitions/ExpressionEvaluationOptions", - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DeploymentParameter": { - "type": "object", - "properties": { - "value": { - "description": "Input value to the parameter ." - }, - "reference": { - "$ref": "#/definitions/KeyVaultParameterReference", - "description": "Azure Key Vault parameter reference." - } - }, - "description": "Deployment parameter for the template." - }, - "KeyVaultParameterReference": { - "type": "object", - "properties": { - "keyVault": { - "$ref": "#/definitions/KeyVaultReference", - "description": "Azure Key Vault reference." - }, - "secretName": { - "type": "string", - "description": "Azure Key Vault secret name." - }, - "secretVersion": { - "type": "string", - "description": "Azure Key Vault secret version." - } - }, - "required": [ - "keyVault", - "secretName" - ], - "description": "Azure Key Vault parameter reference." - }, - "KeyVaultReference": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Azure Key Vault resource id." - } - }, - "required": [ - "id" - ], - "description": "Azure Key Vault reference." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - }, - "description": "The debug setting." - }, - "Deployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "ScopedDeployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update tags on a resource": { + "$ref": "./examples/DeleteTagsResource.json" + }, + "Update tags on a subscription": { + "$ref": "./examples/DeleteTagsSubscription.json" + } } - }, - "description": "The deployment export result. " - }, - "DeploymentWhatIf": { + } + } + }, + "definitions": { + "GenericResourceFilter": { "properties": { - "location": { + "resourceType": { "type": "string", - "description": "The location to store the deployment data." + "description": "The resource type." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "ScopedDeploymentWhatIf": { - "properties": { - "location": { + "tagname": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "DeploymentWhatIfProperties": { - "properties": { - "whatIfSettings": { - "$ref": "#/definitions/DeploymentWhatIfSettings", - "description": "Optional What-If operation settings." + "tagvalue": { + "type": "string", + "description": "The tag value." } }, - "allOf": [ - { - "$ref": "#/definitions/DeploymentProperties" - } - ], - "description": "Deployment What-if properties." + "description": "Resource filter." }, - "DeploymentWhatIfSettings": { + "ResourceGroupFilter": { "properties": { - "resultFormat": { + "tagName": { "type": "string", - "description": "The format of the What-If results", - "enum": [ - "ResourceIdOnly", - "FullResourcePayloads" - ], - "x-ms-enum": { - "name": "WhatIfResultFormat", - "modelAsString": false - } + "description": "The tag name." + }, + "tagValue": { + "type": "string", + "description": "The tag value." } }, - "description": "Deployment What-If operation settings." + "description": "Resource group filter." }, "CloudError": { "x-ms-external": true, @@ -5191,321 +2480,25 @@ }, "x-ms-identifiers": [ "resourceType" - ], - "description": "The collection of provider resource types." - }, - "providerAuthorizationConsentState": { - "type": "string", - "enum": [ - "NotSpecified", - "Required", - "NotRequired", - "Consented" - ], - "description": "The provider authorization consent state.", - "x-ms-enum": { - "name": "ProviderAuthorizationConsentState", - "modelAsString": true - } - } - }, - "description": "Resource provider information." - }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "type": "string", - "readOnly": true, - "description": "Denotes the state of provisioning.", - "enum": [ - "NotSpecified", - "Accepted", - "Running", - "Ready", - "Creating", - "Created", - "Deleting", - "Deleted", - "Canceled", - "Failed", - "Succeeded", - "Updating" - ], - "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true - } - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "readOnly": true, - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "templateLink": { - "readOnly": true, - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template." - }, - "parameters": { - "readOnly": true, - "type": "object", - "description": "Deployment parameters. " - }, - "parametersLink": { - "readOnly": true, - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. " - }, - "mode": { - "readOnly": true, - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "readOnly": true, - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "readOnly": true, - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "templateHash": { - "readOnly": true, - "type": "string", - "description": "The hash produced for the template." - }, - "outputResources": { - "readOnly": true, - "type": "array", - "description": "Array of provisioned resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of provisioned resources." - } - }, - "validatedResources": { - "readOnly": true, - "type": "array", - "description": "Array of validated resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of validated resources." - } - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - } - }, - "description": "Deployment properties with additional details." - }, - "ResourceReference": { - "description": "The resource Id model.", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The fully qualified resource Id." - } - } - }, - "OnErrorDeployment": { - "properties": { - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior." - }, - "OnErrorDeploymentExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning for the on error deployment." - }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment validation error." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The name of the deployment." - }, - "type": { - "readOnly": true, - "type": "string", - "description": "The type of the deployment." - }, - "location": { - "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentExtended" - }, - "description": "An array of deployments." + ], + "description": "The collection of provider resource types." }, - "nextLink": { - "readOnly": true, + "providerAuthorizationConsentState": { "type": "string", - "description": "The URL to use for getting the next set of results." + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } } }, - "description": "List of deployments." + "description": "Resource provider information." }, "ProviderListResult": { "properties": { @@ -5962,182 +2955,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningOperation": { - "readOnly": true, - "type": "string", - "description": "The name of the current provisioning operation.", - "enum": [ - "NotSpecified", - "Create", - "Delete", - "Waiting", - "AzureAsyncOperationWaiting", - "ResourceCacheWaiting", - "Action", - "Read", - "EvaluateDeploymentOutput", - "DeploymentCleanup" - ], - "x-ms-enum": { - "name": "ProvisioningOperation", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "The provisioning operation is not specified." - }, - { - "value": "Create", - "description": "The provisioning operation is create." - }, - { - "value": "Delete", - "description": "The provisioning operation is delete." - }, - { - "value": "Waiting", - "description": "The provisioning operation is waiting." - }, - { - "value": "AzureAsyncOperationWaiting", - "description": "The provisioning operation is waiting Azure async operation." - }, - { - "value": "ResourceCacheWaiting", - "description": "The provisioning operation is waiting for resource cache." - }, - { - "value": "Action", - "description": "The provisioning operation is action." - }, - { - "value": "Read", - "description": "The provisioning operation is read." - }, - { - "value": "EvaluateDeploymentOutput", - "description": "The provisioning operation is evaluate output." - }, - { - "value": "DeploymentCleanup", - "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." - } - ] - } - }, - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." - }, - "statusMessage": { - "readOnly": true, - "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", - "$ref": "#/definitions/StatusMessage" - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -6280,203 +3097,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, - "WhatIfPropertyChange": { - "required": [ - "path", - "propertyChangeType" - ], - "properties": { - "path": { - "type": "string", - "description": "The path of the property." - }, - "propertyChangeType": { - "type": "string", - "description": "The type of property change.", - "enum": [ - "Create", - "Delete", - "Modify", - "Array", - "NoEffect" - ], - "x-ms-enum": { - "name": "PropertyChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." - }, - { - "value": "Modify", - "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." - }, - { - "value": "Array", - "description": "The property is an array and contains nested changes." - }, - { - "value": "NoEffect", - "description": "The property will not be set or updated." - } - ] - } - }, - "before": { - "type": "object", - "description": "The value of the property before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The value of the property after the deployment is executed." - }, - "children": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "Nested property changes." - } - }, - "description": "The predicted change to the resource property." - }, - "WhatIfChange": { - "description": "Information about a single resource change predicted by What-If operation.", - "required": [ - "resourceId", - "changeType" - ], - "properties": { - "resourceId": { - "type": "string", - "description": "Resource ID" - }, - "changeType": { - "type": "string", - "description": "Type of change that will be made to the resource when the deployment is executed.", - "enum": [ - "Create", - "Delete", - "Ignore", - "Deploy", - "NoChange", - "Modify", - "Unsupported" - ], - "x-ms-enum": { - "name": "ChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." - }, - { - "value": "Ignore", - "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." - }, - { - "value": "Deploy", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." - }, - { - "value": "NoChange", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." - }, - { - "value": "Modify", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." - }, - { - "value": "Unsupported", - "description": "The resource is not supported by What-If." - } - ] - } - }, - "unsupportedReason": { - "type": "string", - "description": "The explanation about why the resource is unsupported by What-If." - }, - "before": { - "type": "object", - "description": "The snapshot of the resource before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The predicted snapshot of the resource after the deployment is executed." - }, - "delta": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "The predicted changes to resource properties." - } - } - }, - "WhatIfOperationProperties": { - "description": "Deployment operation properties.", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "x-ms-identifiers": [ - "resourceId", - "changeType" - ], - "description": "List of resource changes predicted by What-If operation." - } - } - }, - "WhatIfOperationResult": { - "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", - "properties": { - "status": { - "type": "string", - "description": "Status of the What-If operation." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/WhatIfOperationProperties", - "description": "What-If operation properties." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error when What-If operation fails." - } - } - }, "Tags": { "description": "A dictionary of name and value pairs.", "properties": { @@ -6693,38 +3313,6 @@ } } }, - "StatusMessage": { - "type": "object", - "description": "Operation status message object.", - "properties": { - "status": { - "type": "string", - "description": "Status of the deployment operation." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The error reported by the operation." - } - } - }, - "ExpressionEvaluationOptions": { - "properties": { - "scope": { - "type": "string", - "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", - "enum": [ - "NotSpecified", - "Outer", - "Inner" - ], - "x-ms-enum": { - "name": "ExpressionEvaluationOptionsScopeType", - "modelAsString": true - } - } - }, - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." - }, "ZoneMapping": { "type": "object", "properties": { @@ -6768,17 +3356,6 @@ "type": "string", "description": "The Microsoft Azure subscription ID." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/resources.json index 707bea4ee614..d23bfbae36d3 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2024-07-01/resources.json @@ -65,31 +65,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -97,32 +100,34 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true - }, - "head": { + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CheckExistenceAtScope", - "description": "Checks whether the deployment exists.", + "operationId": "Providers_RegisterAtManagementGroupScope", + "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/GroupIdParameter" } ], "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "200": { + "description": "OK - Returns information about the resource provider." }, "default": { "description": "Error response describing why the operation failed.", @@ -131,45 +136,35 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtScope", - "summary": "Deploys resources at a given scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_ProviderPermissions", + "description": "Get the provider permissions.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information on the provider permissions.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderPermissionListResult" } }, "default": { @@ -179,35 +174,49 @@ } } }, - "x-ms-long-running-operation": true, "x-ms-examples": { - "Create deployment at a given scope.": { - "$ref": "./examples/PutDeploymentAtScope.json" + "Get provider resource types.": { + "$ref": "./examples/GetProviderPermissions.json" } } - }, - "get": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtScope", - "description": "Gets a deployment.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "properties", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ProviderRegistrationRequest" + }, + "description": "The third party consent for S2S." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } }, "default": { @@ -219,28 +228,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/subscriptions/{subscriptionId}/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -248,32 +263,31 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get providers.": { + "$ref": "./examples/GetProviders.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -281,18 +295,9 @@ ], "responses": { "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "The template deployment validation detected failures.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -302,36 +307,45 @@ } } }, - "x-ms-examples": { - "Validates a template at scope": { - "$ref": "./examples/PostDeploymentValidateOnScope.json" - } + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -340,44 +354,48 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get provider.": { + "$ref": "./examples/GetProvider.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ListAtScope", - "description": "Get all the deployments at the given scope.", + "operationId": "ProviderResourceTypes_List", + "description": "List the resource types for a specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns resource types information for the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ProviderResourceTypeListResult" } }, "default": { @@ -387,34 +405,113 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-examples": { + "Get provider resource types.": { + "$ref": "./examples/GetProviderResourceTypes.json" + } + } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtTenantScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "x-ms-examples": { + "Get a resource provider at tenant scope": { + "$ref": "./examples/GetNamedProviderAtTenant.json" + } + }, + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/ApiVersionParameter" - } + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, - "204": { - "description": "No Content" + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { + "get": { + "tags": [ + "ResourceGroups" + ], + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resources", + "schema": { + "$ref": "#/definitions/ResourceListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -423,20 +520,35 @@ } } }, - "x-ms-long-running-operation": true - }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistenceAtTenantScope", - "description": "Checks whether the deployment exists.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -456,39 +568,53 @@ }, "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdateAtTenantScope", - "summary": "Deploys resources at tenant scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -497,33 +623,59 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at tenant scope.": { - "$ref": "./examples/PutDeploymentAtTenant.json" - } } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtTenantScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "forceDeletionTypes", + "in": "query", + "required": false, + "type": "string", + "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], + "x-ms-examples": { + "Force delete all the Virtual Machines in a resource group": { + "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" + }, + "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { + "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" + } + }, "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" + "description": "OK" + }, + "202": { + "description": "Accepted", + "headers": { + "location": { + "type": "string", + "description": "URL to get status of this long-running operation." + } } }, "default": { @@ -532,28 +684,39 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtTenantScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -562,47 +725,46 @@ } } } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtTenantScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "The template deployment validation detected failures.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -611,121 +773,84 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-examples": { - "Validates a template at tenant scope": { - "$ref": "./examples/PostDeploymentValidateOnTenant.json" - } } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_WhatIfAtTenantScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/ExportTemplateRequest" }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "Parameters for exporting the template." } ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtTenantScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" }, - { - "$ref": "#/parameters/ApiVersionParameter" + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + }, + "Export a resource group as Bicep": { + "$ref": "./examples/ExportResourceGroupAsBicep.json" } - ], + }, "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/ResourceGroupExportResult" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" } } }, - "/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtTenantScope", - "description": "Get all the deployments at the tenant scope.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -733,17 +858,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } }, "default": { @@ -756,31 +884,47 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be moved.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" @@ -793,77 +937,102 @@ } }, "x-ms-long-running-operation": true - }, - "head": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - }, - "put": { + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resources": { + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Additional parameters supplied to the operation." + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of recommendations per page if a paged version of this API is being used." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -873,69 +1042,79 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, - "get": { + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "204": { "description": "No Content" }, + "404": { + "description": "Not Found" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -943,2749 +1122,61 @@ } } } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "The template deployment validation detected failures.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Validates a template at management group scope": { - "$ref": "./examples/PostDeploymentValidateOnManagementGroup.json" - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtManagementGroupScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "The template deployment validation detected failures.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Validates a template at subscription scope": { - "$ref": "./examples/PostDeploymentValidateOnSubscription.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIfAtSubscriptionScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to What If." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at subscription scope": { - "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "head": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - }, - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" - }, - "Create a deployment that will deploy a template with a uri and queryString": { - "$ref": "./examples/PutDeploymentResourceGroup.json" - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "The template deployment validation detected failures.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Validates a template at resource group scope": { - "$ref": "./examples/PostDeploymentValidateOnResourceGroup.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIf", - "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at resource group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_RegisterAtManagementGroupScope", - "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/GroupIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ProviderPermissions", - "description": "Get the provider permissions.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information on the provider permissions.", - "schema": { - "$ref": "#/definitions/ProviderPermissionListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderPermissions.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "properties", - "in": "body", - "required": false, - "schema": { - "$ref": "#/definitions/ProviderRegistrationRequest" - }, - "description": "The third party consent for S2S." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Get providers.": { - "$ref": "./examples/GetProviders.json" - } - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider.": { - "$ref": "./examples/GetProvider.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "ProviderResourceTypes_List", - "description": "List the resource types for a specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns resource types information for the resource provider.", - "schema": { - "$ref": "#/definitions/ProviderResourceTypeListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderResourceTypes.json" - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "x-ms-examples": { - "Get a resource provider at tenant scope": { - "$ref": "./examples/GetNamedProviderAtTenant.json" - } - }, - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "forceDeletionTypes", - "in": "query", - "required": false, - "type": "string", - "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "x-ms-examples": { - "Force delete all the Virtual Machines in a resource group": { - "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" - }, - "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { - "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" - } - }, - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted", - "headers": { - "location": { - "type": "string", - "description": "URL to get status of this long-running operation." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - }, - "Export a resource group as Bicep": { - "$ref": "./examples/ExportResourceGroupAsBicep.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be moved.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of recommendations per page if a paged version of this API is being used." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to create." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Update", - "description": "Updates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to update.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to update." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Get", - "description": "Gets a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{resourceId}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { - "name": "resourceId", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", - "parameters": [ { - "name": "resourceId", + "name": "resourceProviderNamespace", "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "summary": "Deletes a predefined tag value for a predefined tag name.", - "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", - "parameters": [ + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, { - "name": "tagName", + "name": "parentResourcePath", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "name": "tagValue", + "name": "resourceType", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to delete." + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to delete." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3693,10 +1184,13 @@ ], "responses": { "200": { - "description": "Predefined tag value successfully deleted." + "description": "OK" + }, + "202": { + "description": "Accepted" }, "204": { - "description": "Predefined tag value did not exist." + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3704,77 +1198,72 @@ "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-long-running-operation": true }, "put": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_CreateOrUpdateValue", - "summary": "Creates a predefined value for a predefined tag name.", - "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "name": "tagValue", + "name": "resourceProviderNamespace", "in": "path", "required": true, "type": "string", - "description": "The value of the tag to create." + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value already exists. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a predefined tag name.", - "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", - "parameters": [ { - "name": "tagName", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag to create." + "description": "The name of the resource to create." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for creating or updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3782,74 +1271,92 @@ ], "responses": { "200": { - "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagDetails" + "$ref": "#/definitions/GenericResource" } }, "201": { - "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagDetails" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } + }, + "x-ms-long-running-operation": true }, - "delete": { + "patch": { "tags": [ - "Tags" + "Resources" ], - "operationId": "Tags_Delete", - "summary": "Deletes a predefined tag name.", - "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { - "name": "tagName", + "name": "resourceGroupName", "in": "path", "required": true, "type": "string", - "description": "The name of the tag." + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name successfully deleted." + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "204": { - "description": "Predefined tag name did not exist." + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "summary": "Gets a summary of tag usage under the subscription.", - "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", - "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to update." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for updating the resource." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3857,11 +1364,14 @@ ], "responses": { "200": { - "description": "OK - Returns an array of tag names and values.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/TagsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -3869,41 +1379,72 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", + "name": "resourceName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the resource to get." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -3915,38 +1456,37 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + "/{resourceId}": { + "head": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "204": { + "description": "No Content" + }, + "404": { + "description": "Not Found" }, "default": { "description": "Error response describing why the operation failed.", @@ -3954,40 +1494,41 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtTenantScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "resourceId", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -3995,39 +1536,58 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtTenantScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } + }, + "201": { + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -4035,83 +1595,89 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "operationId", - "in": "path", + "name": "api-version", + "in": "query", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { + }, + "x-ms-long-running-operation": true + }, "get": { "tags": [ - "DeploymentOperations" + "Resources" ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/GenericResource" } }, "default": { @@ -4120,29 +1686,31 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", + "operationId": "Tags_DeleteValue", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "operationId", + "name": "tagValue", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4153,10 +1721,10 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } + "description": "Predefined tag value successfully deleted." + }, + "204": { + "description": "Predefined tag value did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4165,26 +1733,28 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { + }, + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_CreateOrUpdateValue", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "name": "tagValue", + "in": "path", + "required": true, + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4195,9 +1765,15 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", + "description": "Predefined tag value already exists. Returns information about the predefined tag value.", "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" + "$ref": "#/definitions/TagValue" + } + }, + "201": { + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" } }, "default": { @@ -4206,39 +1782,24 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The ID of the operation to get." + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4249,9 +1810,15 @@ ], "responses": { "200": { - "description": "OK - Returns information about the deployment operation.", + "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", "schema": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" } }, "default": { @@ -4261,36 +1828,21 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { + }, + "delete": { "tags": [ - "DeploymentOperations" + "Tags" ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", + "operationId": "Tags_Delete", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", "parameters": [ { - "name": "resourceGroupName", + "name": "tagName", "in": "path", "required": true, "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -4301,10 +1853,10 @@ ], "responses": { "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } + "description": "Predefined tag name successfully deleted." + }, + "204": { + "description": "Predefined tag name did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -4312,43 +1864,30 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", + "operationId": "Tags_List", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." + "$ref": "#/parameters/SubscriptionIdParameter" } ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, "responses": { "200": { - "description": "OK - Returns the hash.", + "description": "OK - Returns an array of tag names and values.", "schema": { - "$ref": "#/definitions/TemplateHashResult" + "$ref": "#/definitions/TagsListResult" } }, "default": { @@ -4357,6 +1896,9 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, @@ -4557,15 +2099,6 @@ } }, "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, "GenericResourceFilter": { "properties": { "resourceType": { @@ -4581,289 +2114,20 @@ "description": "The tag value." } }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy. Use either the uri or id property, but not both." - }, - "id": { - "type": "string", - "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." - }, - "relativePath": { - "type": "string", - "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - }, - "queryString": { - "type": "string", - "description": "The query string (for example, a SAS token) to be used with the templateLink URI." - } - }, - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/DeploymentParameter" - }, - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - }, - "expressionEvaluationOptions": { - "$ref": "#/definitions/ExpressionEvaluationOptions", - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DeploymentParameter": { - "type": "object", - "properties": { - "value": { - "description": "Input value to the parameter ." - }, - "reference": { - "$ref": "#/definitions/KeyVaultParameterReference", - "description": "Azure Key Vault parameter reference." - } - }, - "description": "Deployment parameter for the template." - }, - "KeyVaultParameterReference": { - "type": "object", - "properties": { - "keyVault": { - "$ref": "#/definitions/KeyVaultReference", - "description": "Azure Key Vault reference." - }, - "secretName": { - "type": "string", - "description": "Azure Key Vault secret name." - }, - "secretVersion": { - "type": "string", - "description": "Azure Key Vault secret version." - } - }, - "required": [ - "keyVault", - "secretName" - ], - "description": "Azure Key Vault parameter reference." - }, - "KeyVaultReference": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Azure Key Vault resource id." - } - }, - "required": [ - "id" - ], - "description": "Azure Key Vault reference." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - }, - "description": "The debug setting." - }, - "Deployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "ScopedDeployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "DeploymentWhatIf": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "ScopedDeploymentWhatIf": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "DeploymentWhatIfProperties": { - "properties": { - "whatIfSettings": { - "$ref": "#/definitions/DeploymentWhatIfSettings", - "description": "Optional What-If operation settings." - } - }, - "allOf": [ - { - "$ref": "#/definitions/DeploymentProperties" - } - ], - "description": "Deployment What-if properties." + "description": "Resource filter." }, - "DeploymentWhatIfSettings": { + "ResourceGroupFilter": { "properties": { - "resultFormat": { + "tagName": { "type": "string", - "description": "The format of the What-If results", - "enum": [ - "ResourceIdOnly", - "FullResourcePayloads" - ], - "x-ms-enum": { - "name": "WhatIfResultFormat", - "modelAsString": false - } + "description": "The tag name." + }, + "tagValue": { + "type": "string", + "description": "The tag value." } }, - "description": "Deployment What-If operation settings." + "description": "Resource group filter." }, "CloudError": { "x-ms-external": true, @@ -5226,382 +2490,15 @@ "Required", "NotRequired", "Consented" - ], - "description": "The provider authorization consent state.", - "x-ms-enum": { - "name": "ProviderAuthorizationConsentState", - "modelAsString": true - } - } - }, - "description": "Resource provider information." - }, - "BasicDependency": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." - }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "DeploymentDiagnosticsDefinition": { - "type": "object", - "required": [ - "level", - "code", - "message" - ], - "properties": { - "level": { - "type": "string", - "readOnly": true, - "description": "Denotes the additional response level.", - "enum": [ - "Warning", - "Info", - "Error" - ], - "x-ms-enum": { - "name": "Level", - "modelAsString": true - } - }, - "code": { - "readOnly": true, - "type": "string", - "description": "The error code." - }, - "message": { - "readOnly": true, - "type": "string", - "description": "The error message." - }, - "target": { - "readOnly": true, - "type": "string", - "description": "The error target." - }, - "additionalInfo": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorAdditionalInfo" - }, - "x-ms-identifiers": [], - "description": "The error additional info." - } - } - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { - "type": "string", - "readOnly": true, - "description": "Denotes the state of provisioning.", - "enum": [ - "NotSpecified", - "Accepted", - "Running", - "Ready", - "Creating", - "Created", - "Deleting", - "Deleted", - "Canceled", - "Failed", - "Succeeded", - "Updating" - ], - "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true - } - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "readOnly": true, - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "templateLink": { - "readOnly": true, - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template." - }, - "parameters": { - "readOnly": true, - "type": "object", - "description": "Deployment parameters. " - }, - "parametersLink": { - "readOnly": true, - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. " - }, - "mode": { - "readOnly": true, - "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "readOnly": true, - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "readOnly": true, - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "templateHash": { - "readOnly": true, - "type": "string", - "description": "The hash produced for the template." - }, - "outputResources": { - "readOnly": true, - "type": "array", - "description": "Array of provisioned resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of provisioned resources." - } - }, - "validatedResources": { - "readOnly": true, - "type": "array", - "description": "Array of validated resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of validated resources." - } - }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." - }, - "diagnostics": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/DeploymentDiagnosticsDefinition" - }, - "description": "Contains diagnostic information collected during validation process." - } - }, - "description": "Deployment properties with additional details." - }, - "ResourceReference": { - "description": "The resource Id model.", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The fully qualified resource Id." - } - } - }, - "OnErrorDeployment": { - "properties": { - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior." - }, - "OnErrorDeploymentExtended": { - "properties": { - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning for the on error deployment." - }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } - }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment validation error." - }, - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The name of the deployment." - }, - "type": { - "readOnly": true, - "type": "string", - "description": "The type of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." - } - }, - "description": "Information from validate template deployment response." - }, - "DeploymentExtended": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The name of the deployment." - }, - "type": { - "readOnly": true, - "type": "string", - "description": "The type of the deployment." - }, - "location": { - "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentExtended" - }, - "description": "An array of deployments." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } } }, - "description": "List of deployments." + "description": "Resource provider information." }, "ProviderListResult": { "properties": { @@ -6058,182 +2955,6 @@ }, "description": "List of subscription tags." }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningOperation": { - "readOnly": true, - "type": "string", - "description": "The name of the current provisioning operation.", - "enum": [ - "NotSpecified", - "Create", - "Delete", - "Waiting", - "AzureAsyncOperationWaiting", - "ResourceCacheWaiting", - "Action", - "Read", - "EvaluateDeploymentOutput", - "DeploymentCleanup" - ], - "x-ms-enum": { - "name": "ProvisioningOperation", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "The provisioning operation is not specified." - }, - { - "value": "Create", - "description": "The provisioning operation is create." - }, - { - "value": "Delete", - "description": "The provisioning operation is delete." - }, - { - "value": "Waiting", - "description": "The provisioning operation is waiting." - }, - { - "value": "AzureAsyncOperationWaiting", - "description": "The provisioning operation is waiting Azure async operation." - }, - { - "value": "ResourceCacheWaiting", - "description": "The provisioning operation is waiting for resource cache." - }, - { - "value": "Action", - "description": "The provisioning operation is action." - }, - { - "value": "Read", - "description": "The provisioning operation is read." - }, - { - "value": "EvaluateDeploymentOutput", - "description": "The provisioning operation is evaluate output." - }, - { - "value": "DeploymentCleanup", - "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." - } - ] - } - }, - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation service request id." - }, - "statusCode": { - "readOnly": true, - "type": "string", - "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." - }, - "statusMessage": { - "readOnly": true, - "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", - "$ref": "#/definitions/StatusMessage" - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." - }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." - } - }, - "description": "Deployment operation properties." - }, - "DeploymentOperation": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Full deployment operation ID." - }, - "operationId": { - "readOnly": true, - "type": "string", - "description": "Deployment operation ID." - }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." - } - }, - "description": "Deployment operation information." - }, - "DeploymentOperationsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/DeploymentOperation" - }, - "description": "An array of deployment operations." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of deployment operations." - }, "ResourceProviderOperationDisplayProperties": { "properties": { "publisher": { @@ -6376,222 +3097,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, - "WhatIfPropertyChange": { - "required": [ - "path", - "propertyChangeType" - ], - "properties": { - "path": { - "type": "string", - "description": "The path of the property." - }, - "propertyChangeType": { - "type": "string", - "description": "The type of property change.", - "enum": [ - "Create", - "Delete", - "Modify", - "Array", - "NoEffect" - ], - "x-ms-enum": { - "name": "PropertyChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." - }, - { - "value": "Modify", - "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." - }, - { - "value": "Array", - "description": "The property is an array and contains nested changes." - }, - { - "value": "NoEffect", - "description": "The property will not be set or updated." - } - ] - } - }, - "before": { - "type": "object", - "description": "The value of the property before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The value of the property after the deployment is executed." - }, - "children": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "Nested property changes." - } - }, - "description": "The predicted change to the resource property." - }, - "WhatIfChange": { - "description": "Information about a single resource change predicted by What-If operation.", - "required": [ - "resourceId", - "changeType" - ], - "properties": { - "resourceId": { - "type": "string", - "description": "Resource ID" - }, - "changeType": { - "type": "string", - "description": "Type of change that will be made to the resource when the deployment is executed.", - "enum": [ - "Create", - "Delete", - "Ignore", - "Deploy", - "NoChange", - "Modify", - "Unsupported" - ], - "x-ms-enum": { - "name": "ChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." - }, - { - "value": "Ignore", - "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." - }, - { - "value": "Deploy", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." - }, - { - "value": "NoChange", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." - }, - { - "value": "Modify", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." - }, - { - "value": "Unsupported", - "description": "The resource is not supported by What-If." - } - ] - } - }, - "unsupportedReason": { - "type": "string", - "description": "The explanation about why the resource is unsupported by What-If." - }, - "before": { - "type": "object", - "description": "The snapshot of the resource before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The predicted snapshot of the resource after the deployment is executed." - }, - "delta": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "The predicted changes to resource properties." - } - } - }, - "WhatIfOperationProperties": { - "description": "Deployment operation properties.", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "x-ms-identifiers": [ - "resourceId", - "changeType" - ], - "description": "List of resource changes predicted by What-If operation." - }, - "potentialChanges": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "x-ms-identifiers": [ - "resourceId", - "changeType" - ], - "description": "List of resource changes predicted by What-If operation." - }, - "diagnostics": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/DeploymentDiagnosticsDefinition" - }, - "description": "List of resource diagnostics detected by What-If operation." - } - } - }, - "WhatIfOperationResult": { - "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", - "properties": { - "status": { - "type": "string", - "description": "Status of the What-If operation." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/WhatIfOperationProperties", - "description": "What-If operation properties." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error when What-If operation fails." - } - } - }, "Tags": { "description": "A dictionary of name and value pairs.", "properties": { @@ -6808,38 +3313,6 @@ } } }, - "StatusMessage": { - "type": "object", - "description": "Operation status message object.", - "properties": { - "status": { - "type": "string", - "description": "Status of the deployment operation." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The error reported by the operation." - } - } - }, - "ExpressionEvaluationOptions": { - "properties": { - "scope": { - "type": "string", - "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", - "enum": [ - "NotSpecified", - "Outer", - "Inner" - ], - "x-ms-enum": { - "name": "ExpressionEvaluationOptionsScopeType", - "modelAsString": true - } - } - }, - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." - }, "ZoneMapping": { "type": "object", "properties": { @@ -6883,17 +3356,6 @@ "type": "string", "description": "The Microsoft Azure subscription ID." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/resources.json index 4f21dcc339e3..fb7fb85032e3 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2024-11-01/resources.json @@ -65,31 +65,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -97,32 +100,34 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true - }, - "head": { + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CheckExistenceAtScope", - "description": "Checks whether the deployment exists.", + "operationId": "Providers_RegisterAtManagementGroupScope", + "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/GroupIdParameter" } ], "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "200": { + "description": "OK - Returns information about the resource provider." }, "default": { "description": "Error response describing why the operation failed.", @@ -131,45 +136,35 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtScope", - "summary": "Deploys resources at a given scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_ProviderPermissions", + "description": "Get the provider permissions.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information on the provider permissions.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderPermissionListResult" } }, "default": { @@ -179,35 +174,49 @@ } } }, - "x-ms-long-running-operation": true, "x-ms-examples": { - "Create deployment at a given scope.": { - "$ref": "./examples/PutDeploymentAtScope.json" + "Get provider resource types.": { + "$ref": "./examples/GetProviderPermissions.json" } } - }, - "get": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtScope", - "description": "Gets a deployment.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "properties", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ProviderRegistrationRequest" + }, + "description": "The third party consent for S2S." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } }, "default": { @@ -219,28 +228,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/subscriptions/{subscriptionId}/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -248,32 +263,31 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get providers.": { + "$ref": "./examples/GetProviders.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -281,18 +295,9 @@ ], "responses": { "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "The template deployment validation detected failures.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -302,36 +307,45 @@ } } }, - "x-ms-examples": { - "Validates a template at scope": { - "$ref": "./examples/PostDeploymentValidateOnScope.json" - } + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -340,44 +354,48 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get provider.": { + "$ref": "./examples/GetProvider.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ListAtScope", - "description": "Get all the deployments at the given scope.", + "operationId": "ProviderResourceTypes_List", + "description": "List the resource types for a specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns resource types information for the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ProviderResourceTypeListResult" } }, "default": { @@ -387,34 +405,113 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-examples": { + "Get provider resource types.": { + "$ref": "./examples/GetProviderResourceTypes.json" + } + } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtTenantScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "x-ms-examples": { + "Get a resource provider at tenant scope": { + "$ref": "./examples/GetNamedProviderAtTenant.json" + } + }, + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/ApiVersionParameter" - } + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, - "204": { - "description": "No Content" + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { + "get": { + "tags": [ + "ResourceGroups" + ], + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resources", + "schema": { + "$ref": "#/definitions/ResourceListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -423,20 +520,35 @@ } } }, - "x-ms-long-running-operation": true - }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistenceAtTenantScope", - "description": "Checks whether the deployment exists.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -456,39 +568,53 @@ }, "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdateAtTenantScope", - "summary": "Deploys resources at tenant scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -497,33 +623,59 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at tenant scope.": { - "$ref": "./examples/PutDeploymentAtTenant.json" - } } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtTenantScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "forceDeletionTypes", + "in": "query", + "required": false, + "type": "string", + "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], + "x-ms-examples": { + "Force delete all the Virtual Machines in a resource group": { + "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" + }, + "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { + "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" + } + }, "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" + "description": "OK" + }, + "202": { + "description": "Accepted", + "headers": { + "location": { + "type": "string", + "description": "URL to get status of this long-running operation." + } } }, "default": { @@ -532,28 +684,39 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtTenantScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -562,47 +725,46 @@ } } } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtTenantScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "The template deployment validation detected failures.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -611,121 +773,84 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-examples": { - "Validates a template at tenant scope": { - "$ref": "./examples/PostDeploymentValidateOnTenant.json" - } } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_WhatIfAtTenantScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/ExportTemplateRequest" }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "Parameters for exporting the template." } ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtTenantScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" }, - { - "$ref": "#/parameters/ApiVersionParameter" + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + }, + "Export a resource group as Bicep": { + "$ref": "./examples/ExportResourceGroupAsBicep.json" } - ], + }, "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/ResourceGroupExportResult" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" } } }, - "/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtTenantScope", - "description": "Get all the deployments at the tenant scope.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -733,17 +858,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } }, "default": { @@ -756,31 +884,47 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be moved.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" @@ -793,77 +937,102 @@ } }, "x-ms-long-running-operation": true - }, - "head": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - }, - "put": { + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resources": { + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Additional parameters supplied to the operation." + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of recommendations per page if a paged version of this API is being used." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -873,69 +1042,79 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, - "get": { + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "204": { "description": "No Content" }, + "404": { + "description": "Not Found" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -943,51 +1122,75 @@ } } } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "name": "parameters", - "in": "body", + "name": "parentResourcePath", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to delete." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "description": "OK" }, "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + "description": "Accepted" }, - "400": { - "description": "The template deployment validation detected failures.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -996,60 +1199,92 @@ } } }, - "x-ms-examples": { - "Validates a template at management group scope": { - "$ref": "./examples/PostDeploymentValidateOnManagementGroup.json" - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_WhatIfAtManagementGroupScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to create." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/GenericResource" }, - "description": "Parameters to validate." + "description": "Parameters for creating or updating the resource." }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns What-If operation status", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/WhatIfOperationResult" + "$ref": "#/definitions/GenericResource" } }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -1057,88 +1292,86 @@ } } }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true }, { - "name": "$filter", - "in": "query", - "required": false, + "name": "resourceName", + "in": "path", + "required": true, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The name of the resource to update." }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for updating the resource." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -1146,37 +1379,73 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -1184,24 +1453,32 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true - }, + } + } + }, + "/{resourceId}": { "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -1219,46 +1496,98 @@ } } }, - "put": { + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "parameters", - "in": "body", + "name": "api-version", + "in": "query", "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "put": { + "tags": [ + "Resources" + ], + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", + "parameters": [ + { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/GenericResource" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -1266,68 +1595,90 @@ } } }, - "x-ms-examples": { - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" - } - }, "x-ms-long-running-operation": true }, - "get": { + "patch": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -1338,26 +1689,28 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Tags_DeleteValue", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "parameters", - "in": "body", + "name": "tagValue", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1368,19 +1721,10 @@ ], "responses": { "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + "description": "Predefined tag value successfully deleted." }, - "400": { - "description": "The template deployment validation detected failures.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "204": { + "description": "Predefined tag value did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -1388,33 +1732,29 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-examples": { - "Validates a template at subscription scope": { - "$ref": "./examples/PostDeploymentValidateOnSubscription.json" - } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { + }, + "put": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_WhatIfAtSubscriptionScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "operationId": "Tags_CreateOrUpdateValue", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "parameters", - "in": "body", + "name": "tagValue", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to What If." + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1425,22 +1765,15 @@ ], "responses": { "200": { - "description": "OK - Returns What-If operation status", + "description": "Predefined tag value already exists. Returns information about the predefined tag value.", "schema": { - "$ref": "#/definitions/WhatIfOperationResult" + "$ref": "#/definitions/TagValue" } }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } + "201": { + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" } }, "default": { @@ -1449,28 +1782,24 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-examples": { - "Predict template changes at subscription scope": { - "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1481,9 +1810,15 @@ ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/TagDetails" } }, "default": { @@ -1493,30 +1828,21 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { - "get": { + }, + "delete": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", + "operationId": "Tags_Delete", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", "parameters": [ { - "name": "$filter", - "in": "query", - "required": false, + "name": "tagName", + "in": "path", + "required": true, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1527,10 +1853,10 @@ ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } + "description": "Predefined tag name successfully deleted." + }, + "204": { + "description": "Predefined tag name did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -1538,35 +1864,18 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Tags_List", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -1575,11 +1884,11 @@ } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of tag names and values.", + "schema": { + "$ref": "#/definitions/TagsListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -1588,41 +1897,50 @@ } } }, - "x-ms-long-running-operation": true - }, - "head": { + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Resources/tags/default": { + "put": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", + "operationId": "Tags_CreateOrUpdateAtScope", + "summary": "Creates or updates the entire set of tags on a resource or subscription.", + "description": "This operation allows adding or replacing the entire set of tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ScopeParameter" }, { "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "Tags updated successfully. Returns tags from the specified object.", + "schema": { + "$ref": "#/definitions/TagsResource" + } }, - "404": { - "description": "Not Found" + "202": { + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + } + }, + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -1630,57 +1948,55 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update tags on a resource": { + "$ref": "./examples/PutTagsResource.json" + }, + "Update tags on a subscription": { + "$ref": "./examples/PutTagsSubscription.json" + } } }, - "put": { + "patch": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Tags_UpdateAtScope", + "summary": "Selectively updates the set of tags on a resource or subscription.", + "description": "This operation allows replacing, merging or selectively deleting tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags at the end of the operation. The 'replace' option replaces the entire set of existing tags with a new set. The 'merge' option allows adding tags with new names and updating the values of tags with existing names. The 'delete' option allows selectively deleting tags based on given names or name/value pairs.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 + "$ref": "#/parameters/ScopeParameter" }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "#/definitions/TagsPatchResource" + } } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "Tags updated successfully. Returns tags from the specified object.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/TagsResource" } }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "202": { + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + } + }, + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -1689,54 +2005,35 @@ } } }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - }, - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + "Update tags on a resource": { + "$ref": "./examples/PatchTagsResource.json" }, - "Create a deployment that will deploy a template with a uri and queryString": { - "$ref": "./examples/PutDeploymentResourceGroup.json" + "Update tags on a subscription": { + "$ref": "./examples/PatchTagsSubscription.json" } - }, - "x-ms-long-running-operation": true + } }, "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", + "operationId": "Tags_GetAtScope", + "summary": "Gets the entire set of tags on a resource or subscription.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ScopeParameter" }, { "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "Returns tags from the specified object.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/TagsResource" } }, "default": { @@ -1745,175 +2042,42 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get tags on a resource": { + "$ref": "./examples/GetTagsResource.json" + }, + "Get tags on a subscription": { + "$ref": "./examples/GetTagsSubscription.json" + } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "The template deployment validation detected failures.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Validates a template at resource group scope": { - "$ref": "./examples/PostDeploymentValidateOnResourceGroup.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIf", - "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "operationId": "Tags_DeleteAtScope", + "summary": "Deletes the entire set of tags on a resource or subscription.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to validate." + "$ref": "#/parameters/ScopeParameter" }, { "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } + "description": "Tags successfully deleted." }, "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", "headers": { "Location": { "type": "string", "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." } - } + }, + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -1922,3694 +2086,419 @@ } } }, - "x-ms-examples": { - "Predict template changes at resource group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" - } - }, "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } + "x-ms-examples": { + "Update tags on a resource": { + "$ref": "./examples/DeleteTagsResource.json" }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } + "Update tags on a subscription": { + "$ref": "./examples/DeleteTagsSubscription.json" } } } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_RegisterAtManagementGroupScope", - "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/GroupIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ProviderPermissions", - "description": "Get the provider permissions.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information on the provider permissions.", - "schema": { - "$ref": "#/definitions/ProviderPermissionListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderPermissions.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "properties", - "in": "body", - "required": false, - "schema": { - "$ref": "#/definitions/ProviderRegistrationRequest" - }, - "description": "The third party consent for S2S." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Get providers.": { - "$ref": "./examples/GetProviders.json" - } - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider.": { - "$ref": "./examples/GetProvider.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "ProviderResourceTypes_List", - "description": "List the resource types for a specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns resource types information for the resource provider.", - "schema": { - "$ref": "#/definitions/ProviderResourceTypeListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderResourceTypes.json" - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "x-ms-examples": { - "Get a resource provider at tenant scope": { - "$ref": "./examples/GetNamedProviderAtTenant.json" - } - }, - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "forceDeletionTypes", - "in": "query", - "required": false, - "type": "string", - "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "x-ms-examples": { - "Force delete all the Virtual Machines in a resource group": { - "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" - }, - "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { - "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" - } - }, - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted", - "headers": { - "location": { - "type": "string", - "description": "URL to get status of this long-running operation." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - }, - "Export a resource group as Bicep": { - "$ref": "./examples/ExportResourceGroupAsBicep.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be moved.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of recommendations per page if a paged version of this API is being used." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to create." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Update", - "description": "Updates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to update.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to update." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Get", - "description": "Gets a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{resourceId}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "summary": "Deletes a predefined tag value for a predefined tag name.", - "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "name": "tagValue", - "in": "path", - "required": true, - "type": "string", - "description": "The value of the tag to delete." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value successfully deleted." - }, - "204": { - "description": "Predefined tag value did not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdateValue", - "summary": "Creates a predefined value for a predefined tag name.", - "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "name": "tagValue", - "in": "path", - "required": true, - "type": "string", - "description": "The value of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value already exists. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a predefined tag name.", - "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name already exists. Returns information about the predefined tag name.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - }, - "201": { - "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_Delete", - "summary": "Deletes a predefined tag name.", - "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name successfully deleted." - }, - "204": { - "description": "Predefined tag name did not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "summary": "Gets a summary of tag usage under the subscription.", - "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of tag names and values.", - "schema": { - "$ref": "#/definitions/TagsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtTenantScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtTenantScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." - } - ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the hash.", - "schema": { - "$ref": "#/definitions/TemplateHashResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{scope}/providers/Microsoft.Resources/tags/default": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdateAtScope", - "summary": "Creates or updates the entire set of tags on a resource or subscription.", - "description": "This operation allows adding or replacing the entire set of tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/TagsResource" - } - } - ], - "responses": { - "200": { - "description": "Tags updated successfully. Returns tags from the specified object.", - "schema": { - "$ref": "#/definitions/TagsResource" - } - }, - "202": { - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - } - }, - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Update tags on a resource": { - "$ref": "./examples/PutTagsResource.json" - }, - "Update tags on a subscription": { - "$ref": "./examples/PutTagsSubscription.json" - } - } - }, - "patch": { - "tags": [ - "Tags" - ], - "operationId": "Tags_UpdateAtScope", - "summary": "Selectively updates the set of tags on a resource or subscription.", - "description": "This operation allows replacing, merging or selectively deleting tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags at the end of the operation. The 'replace' option replaces the entire set of existing tags with a new set. The 'merge' option allows adding tags with new names and updating the values of tags with existing names. The 'delete' option allows selectively deleting tags based on given names or name/value pairs.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/TagsPatchResource" - } - } - ], - "responses": { - "200": { - "description": "Tags updated successfully. Returns tags from the specified object.", - "schema": { - "$ref": "#/definitions/TagsResource" - } - }, - "202": { - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - } - }, - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Update tags on a resource": { - "$ref": "./examples/PatchTagsResource.json" - }, - "Update tags on a subscription": { - "$ref": "./examples/PatchTagsSubscription.json" - } - } - }, - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_GetAtScope", - "summary": "Gets the entire set of tags on a resource or subscription.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Returns tags from the specified object.", - "schema": { - "$ref": "#/definitions/TagsResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get tags on a resource": { - "$ref": "./examples/GetTagsResource.json" - }, - "Get tags on a subscription": { - "$ref": "./examples/GetTagsSubscription.json" - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteAtScope", - "summary": "Deletes the entire set of tags on a resource or subscription.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Tags successfully deleted." - }, - "202": { - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - } - }, - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Update tags on a resource": { - "$ref": "./examples/DeleteTagsResource.json" - }, - "Update tags on a subscription": { - "$ref": "./examples/DeleteTagsSubscription.json" - } - } - } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy. Use either the uri or id property, but not both." - }, - "id": { - "type": "string", - "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." - }, - "relativePath": { - "type": "string", - "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - }, - "queryString": { - "type": "string", - "description": "The query string (for example, a SAS token) to be used with the templateLink URI." - } - }, - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/DeploymentParameter" - }, - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - }, - "expressionEvaluationOptions": { - "$ref": "#/definitions/ExpressionEvaluationOptions", - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." - }, - "validationLevel": { - "$ref": "#/definitions/ValidationLevel", - "description": "The validation level of the deployment" - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DeploymentParameter": { - "type": "object", - "properties": { - "value": { - "description": "Input value to the parameter ." - }, - "reference": { - "$ref": "#/definitions/KeyVaultParameterReference", - "description": "Azure Key Vault parameter reference." - } - }, - "description": "Deployment parameter for the template." - }, - "KeyVaultParameterReference": { - "type": "object", - "properties": { - "keyVault": { - "$ref": "#/definitions/KeyVaultReference", - "description": "Azure Key Vault reference." - }, - "secretName": { - "type": "string", - "description": "Azure Key Vault secret name." - }, - "secretVersion": { - "type": "string", - "description": "Azure Key Vault secret version." - } - }, - "required": [ - "keyVault", - "secretName" - ], - "description": "Azure Key Vault parameter reference." - }, - "KeyVaultReference": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Azure Key Vault resource id." - } - }, - "required": [ - "id" - ], - "description": "Azure Key Vault reference." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - }, - "description": "The debug setting." - }, - "Deployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "ScopedDeployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "DeploymentWhatIf": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "ScopedDeploymentWhatIf": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "DeploymentWhatIfProperties": { - "properties": { - "whatIfSettings": { - "$ref": "#/definitions/DeploymentWhatIfSettings", - "description": "Optional What-If operation settings." - } - }, - "allOf": [ - { - "$ref": "#/definitions/DeploymentProperties" - } - ], - "description": "Deployment What-if properties." - }, - "DeploymentWhatIfSettings": { - "properties": { - "resultFormat": { - "type": "string", - "description": "The format of the What-If results", - "enum": [ - "ResourceIdOnly", - "FullResourcePayloads" - ], - "x-ms-enum": { - "name": "WhatIfResultFormat", - "modelAsString": false - } - } - }, - "description": "Deployment What-If operation settings." - }, - "CloudError": { - "x-ms-external": true, - "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" - } - }, - "description": "An error response for a resource management request." - }, - "ApiProfile": { - "properties": { - "profileVersion": { - "type": "string", - "readOnly": true, - "description": "The profile version." - }, - "apiVersion": { - "type": "string", - "readOnly": true, - "description": "The API version." - } - } - }, - "AliasPathMetadata": { - "properties": { - "type": { - "type": "string", - "readOnly": true, - "enum": [ - "NotSpecified", - "Any", - "String", - "Object", - "Array", - "Integer", - "Number", - "Boolean" - ], - "x-ms-enum": { - "name": "AliasPathTokenType", - "modelAsString": true, - "values": [ - { - "value": "NotSpecified", - "description": "The token type is not specified." - }, - { - "value": "Any", - "description": "The token type can be anything." - }, - { - "value": "String", - "description": "The token type is string." - }, - { - "value": "Object", - "description": "The token type is object." - }, - { - "value": "Array", - "description": "The token type is array." - }, - { - "value": "Integer", - "description": "The token type is integer." - }, - { - "value": "Number", - "description": "The token type is number." - }, - { - "value": "Boolean", - "description": "The token type is boolean." - } - ] - }, - "description": "The type of the token that the alias path is referring to." - }, - "attributes": { - "type": "string", - "readOnly": true, - "enum": [ - "None", - "Modifiable" - ], - "x-ms-enum": { - "name": "AliasPathAttributes", - "modelAsString": true, - "values": [ - { - "value": "None", - "description": "The token that the alias path is referring to has no attributes." - }, - { - "value": "Modifiable", - "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." - } - ] - }, - "description": "The attributes of the token that the alias path is referring to." - } - } - }, - "AliasPath": { - "properties": { - "path": { - "type": "string", - "description": "The path of an alias." - }, - "apiVersions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The API versions." - }, - "pattern": { - "$ref": "#/definitions/AliasPattern", - "description": "The pattern for an alias path." - }, - "metadata": { - "readOnly": true, - "$ref": "#/definitions/AliasPathMetadata", - "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." - } - }, - "description": "The type of the paths for alias." - }, - "AliasPattern": { - "properties": { - "phrase": { - "type": "string", - "description": "The alias pattern phrase." - }, - "variable": { - "type": "string", - "description": "The alias pattern variable." - }, - "type": { - "type": "string", - "enum": [ - "NotSpecified", - "Extract" - ], - "x-ms-enum": { - "name": "AliasPatternType", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "NotSpecified is not allowed." - }, - { - "value": "Extract", - "description": "Extract is the only allowed value." - } - ] - }, - "description": "The type of alias pattern" - } - }, - "description": "The type of the pattern for an alias path." - }, - "Alias": { - "properties": { - "name": { - "type": "string", - "description": "The alias name." - }, - "paths": { - "type": "array", - "items": { - "$ref": "#/definitions/AliasPath" - }, - "x-ms-identifiers": [], - "description": "The paths for an alias." - }, - "type": { - "type": "string", - "description": "The type of the alias.", - "enum": [ - "NotSpecified", - "PlainText", - "Mask" - ], - "x-ms-enum": { - "name": "AliasType", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "Alias type is unknown (same as not providing alias type)." - }, - { - "value": "PlainText", - "description": "Alias value is not secret." - }, - { - "value": "Mask", - "description": "Alias value is secret." - } - ] - } - }, - "defaultPath": { - "type": "string", - "description": "The default path for an alias." - }, - "defaultPattern": { - "$ref": "#/definitions/AliasPattern", - "description": "The default pattern for an alias." - }, - "defaultMetadata": { - "readOnly": true, - "$ref": "#/definitions/AliasPathMetadata", - "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" - } - }, - "description": "The alias type. " - }, - "ProviderExtendedLocation": { - "properties": { - "location": { - "type": "string", - "description": "The azure location." - }, - "type": { - "type": "string", - "description": "The extended location type." - }, - "extendedLocations": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The extended locations for the azure location." - } - }, - "description": "The provider extended location. " - }, - "ProviderResourceType": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "locations": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The collection of locations where this resource type can be created." - }, - "locationMappings": { - "type": "array", - "items": { - "$ref": "#/definitions/ProviderExtendedLocation" - }, - "x-ms-identifiers": [ - "location", - "type" - ], - "description": "The location mappings that are supported by this resource type." - }, - "aliases": { - "type": "array", - "items": { - "$ref": "#/definitions/Alias" - }, - "x-ms-identifiers": [ - "name" - ], - "description": "The aliases that are supported by this resource type." - }, - "apiVersions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The API version." - }, - "defaultApiVersion": { - "type": "string", - "readOnly": true, - "description": "The default API version." - }, - "zoneMappings": { - "type": "array", - "items": { - "$ref": "#/definitions/ZoneMapping" - }, - "x-ms-identifiers": [ - "location" - ] - }, - "apiProfiles": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ApiProfile" - }, - "x-ms-identifiers": [ - "apiVersion", - "profileVersion" - ], - "description": "The API profiles for the resource provider." - }, - "capabilities": { - "type": "string", - "description": "The additional capabilities offered by this resource type." - }, - "properties": { - "type": "object", - "additionalProperties": { - "type": "string", - "description": "The additional properties. " - }, - "description": "The properties." - } - }, - "description": "Resource type managed by the resource provider." - }, - "Provider": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The provider ID." - }, - "namespace": { - "type": "string", - "description": "The namespace of the resource provider." - }, - "registrationState": { - "readOnly": true, - "type": "string", - "description": "The registration state of the resource provider." - }, - "registrationPolicy": { - "readOnly": true, - "type": "string", - "description": "The registration policy of the resource provider." - }, - "resourceTypes": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/ProviderResourceType" - }, - "x-ms-identifiers": [ - "resourceType" - ], - "description": "The collection of provider resource types." - }, - "providerAuthorizationConsentState": { - "type": "string", - "enum": [ - "NotSpecified", - "Required", - "NotRequired", - "Consented" - ], - "description": "The provider authorization consent state.", - "x-ms-enum": { - "name": "ProviderAuthorizationConsentState", - "modelAsString": true - } - } - }, - "description": "Resource provider information." - }, - "BasicDependency": { + } + }, + "definitions": { + "GenericResourceFilter": { "properties": { - "id": { + "resourceType": { "type": "string", - "description": "The ID of the dependency." + "description": "The resource type." }, - "resourceType": { + "tagname": { "type": "string", - "description": "The dependency resource type." + "description": "The tag name." }, - "resourceName": { + "tagvalue": { "type": "string", - "description": "The dependency resource name." + "description": "The tag value." } }, - "description": "Deployment dependency information." + "description": "Resource filter." }, - "Dependency": { + "ResourceGroupFilter": { "properties": { - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/definitions/BasicDependency" - }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { + "tagName": { "type": "string", - "description": "The dependency resource type." + "description": "The tag name." }, - "resourceName": { + "tagValue": { "type": "string", - "description": "The dependency resource name." + "description": "The tag value." } }, - "description": "Deployment dependency information." + "description": "Resource group filter." }, - "DeploymentDiagnosticsDefinition": { - "type": "object", - "required": [ - "level", - "code", - "message" - ], + "CloudError": { + "x-ms-external": true, "properties": { - "level": { - "type": "string", - "readOnly": true, - "description": "Denotes the additional response level.", - "enum": [ - "Warning", - "Info", - "Error" - ], - "x-ms-enum": { - "name": "Level", - "modelAsString": true - } - }, - "code": { - "readOnly": true, + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response for a resource management request." + }, + "ApiProfile": { + "properties": { + "profileVersion": { "type": "string", - "description": "The error code." - }, - "message": { "readOnly": true, - "type": "string", - "description": "The error message." + "description": "The profile version." }, - "target": { - "readOnly": true, + "apiVersion": { "type": "string", - "description": "The error target." - }, - "additionalInfo": { "readOnly": true, - "type": "array", - "items": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorAdditionalInfo" - }, - "x-ms-identifiers": [], - "description": "The error additional info." + "description": "The API version." } } }, - "DeploymentPropertiesExtended": { + "AliasPathMetadata": { "properties": { - "provisioningState": { + "type": { "type": "string", "readOnly": true, - "description": "Denotes the state of provisioning.", "enum": [ "NotSpecified", - "Accepted", - "Running", - "Ready", - "Creating", - "Created", - "Deleting", - "Deleted", - "Canceled", - "Failed", - "Succeeded", - "Updating" + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" ], "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true - } - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." }, - "duration": { - "readOnly": true, + "attributes": { "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { "readOnly": true, - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Provider" + "enum": [ + "None", + "Modifiable" + ], + "x-ms-enum": { + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] }, - "description": "The list of resource providers needed for the deployment." + "description": "The attributes of the token that the alias path is referring to." + } + } + }, + "AliasPath": { + "properties": { + "path": { + "type": "string", + "description": "The path of an alias." }, - "dependencies": { - "readOnly": true, + "apiVersions": { "type": "array", "items": { - "$ref": "#/definitions/Dependency" + "type": "string" }, - "description": "The list of deployment dependencies." + "description": "The API versions." }, - "templateLink": { - "readOnly": true, - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template." + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." }, - "parameters": { + "metadata": { "readOnly": true, - "type": "object", - "description": "Deployment parameters. " + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + } + }, + "description": "The type of the paths for alias." + }, + "AliasPattern": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." }, - "parametersLink": { - "readOnly": true, - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. " + "variable": { + "type": "string", + "description": "The alias pattern variable." }, - "mode": { - "readOnly": true, + "type": { "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", "enum": [ - "Incremental", - "Complete" + "NotSpecified", + "Extract" ], "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "readOnly": true, - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "readOnly": true, - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "templateHash": { - "readOnly": true, + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { "type": "string", - "description": "The hash produced for the template." + "description": "The alias name." }, - "outputResources": { - "readOnly": true, + "paths": { "type": "array", - "description": "Array of provisioned resources.", "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of provisioned resources." - } + "$ref": "#/definitions/AliasPath" + }, + "x-ms-identifiers": [], + "description": "The paths for an alias." }, - "validatedResources": { - "readOnly": true, - "type": "array", - "description": "Array of validated resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of validated resources." + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] } }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." }, - "diagnostics": { - "type": "array", + "defaultMetadata": { "readOnly": true, - "items": { - "$ref": "#/definitions/DeploymentDiagnosticsDefinition" - }, - "description": "Contains diagnostic information collected during validation process." - }, - "validationLevel": { - "$ref": "#/definitions/ValidationLevel", - "description": "The validation level of the deployment" + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" } }, - "description": "Deployment properties with additional details." + "description": "The alias type. " }, - "ResourceReference": { - "description": "The resource Id model.", + "ProviderExtendedLocation": { "properties": { - "id": { - "readOnly": true, + "location": { "type": "string", - "description": "The fully qualified resource Id." - } - } - }, - "OnErrorDeployment": { - "properties": { + "description": "The azure location." + }, "type": { "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } + "description": "The extended location type." }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." } }, - "description": "Deployment on error behavior." + "description": "The provider extended location. " }, - "OnErrorDeploymentExtended": { + "ProviderResourceType": { "properties": { - "provisioningState": { - "readOnly": true, + "resourceType": { "type": "string", - "description": "The state of the provisioning for the on error deployment." + "description": "The resource type." }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "x-ms-identifiers": [ + "location", + "type" ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } + "description": "The location mappings that are supported by this resource type." + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." }, - "deploymentName": { + "defaultApiVersion": { "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment validation error." + "description": "The default API version." }, - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + }, + "x-ms-identifiers": [ + "location" + ] }, - "name": { + "apiProfiles": { + "type": "array", "readOnly": true, - "type": "string", - "description": "The name of the deployment." + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "x-ms-identifiers": [ + "apiVersion", + "profileVersion" + ], + "description": "The API profiles for the resource provider." }, - "type": { - "readOnly": true, + "capabilities": { "type": "string", - "description": "The type of the deployment." + "description": "The additional capabilities offered by this resource type." }, "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." } }, - "description": "Information from validate template deployment response." + "description": "Resource type managed by the resource provider." }, - "DeploymentExtended": { + "Provider": { "properties": { "id": { "readOnly": true, "type": "string", - "description": "The ID of the deployment." + "description": "The provider ID." }, - "name": { - "readOnly": true, + "namespace": { "type": "string", - "description": "The name of the deployment." + "description": "The namespace of the resource provider." }, - "type": { + "registrationState": { "readOnly": true, "type": "string", - "description": "The type of the deployment." + "description": "The registration state of the resource provider." }, - "location": { + "registrationPolicy": { + "readOnly": true, "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." + "description": "The registration policy of the resource provider." }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { + "resourceTypes": { + "readOnly": true, "type": "array", "items": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderResourceType" }, - "description": "An array of deployments." + "x-ms-identifiers": [ + "resourceType" + ], + "description": "The collection of provider resource types." }, - "nextLink": { - "readOnly": true, + "providerAuthorizationConsentState": { "type": "string", - "description": "The URL to use for getting the next set of results." + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } } }, - "description": "List of deployments." + "description": "Resource provider information." }, "ProviderListResult": { "properties": { @@ -5985,254 +2874,78 @@ ], "x-ms-enum": { "name": "ExportTemplateOutputFormat", - "modelAsString": true - } - } - }, - "description": "Export resource group template request parameters." - }, - "TagCount": { - "properties": { - "type": { - "type": "string", - "description": "Type of count." - }, - "value": { - "type": "integer", - "description": "Value of count." - } - }, - "description": "Tag count." - }, - "TagValue": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The tag value ID." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - }, - "count": { - "$ref": "#/definitions/TagCount", - "description": "The tag value count." - } - }, - "x-ms-azure-resource": true, - "description": "Tag information." - }, - "TagDetails": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The tag name ID." - }, - "tagName": { - "type": "string", - "description": "The tag name." - }, - "count": { - "$ref": "#/definitions/TagCount", - "description": "The total number of resources that use the resource tag. When a tag is initially created and has no associated resources, the value is 0." - }, - "values": { - "type": "array", - "items": { - "$ref": "#/definitions/TagValue" - }, - "description": "The list of tag values." - } - }, - "x-ms-azure-resource": true, - "description": "Tag details." - }, - "TagsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/TagDetails" - }, - "description": "An array of tags." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of subscription tags." - }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." + "modelAsString": true + } } }, - "description": "Target resource." + "description": "Export resource group template request parameters." }, - "HttpMessage": { + "TagCount": { "properties": { - "content": { - "type": "object", - "description": "HTTP message content." + "type": { + "type": "string", + "description": "Type of count." + }, + "value": { + "type": "integer", + "description": "Value of count." } }, - "description": "HTTP message." + "description": "Tag count." }, - "DeploymentOperationProperties": { + "TagValue": { "properties": { - "provisioningOperation": { - "readOnly": true, - "type": "string", - "description": "The name of the current provisioning operation.", - "enum": [ - "NotSpecified", - "Create", - "Delete", - "Waiting", - "AzureAsyncOperationWaiting", - "ResourceCacheWaiting", - "Action", - "Read", - "EvaluateDeploymentOutput", - "DeploymentCleanup" - ], - "x-ms-enum": { - "name": "ProvisioningOperation", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "The provisioning operation is not specified." - }, - { - "value": "Create", - "description": "The provisioning operation is create." - }, - { - "value": "Delete", - "description": "The provisioning operation is delete." - }, - { - "value": "Waiting", - "description": "The provisioning operation is waiting." - }, - { - "value": "AzureAsyncOperationWaiting", - "description": "The provisioning operation is waiting Azure async operation." - }, - { - "value": "ResourceCacheWaiting", - "description": "The provisioning operation is waiting for resource cache." - }, - { - "value": "Action", - "description": "The provisioning operation is action." - }, - { - "value": "Read", - "description": "The provisioning operation is read." - }, - { - "value": "EvaluateDeploymentOutput", - "description": "The provisioning operation is evaluate output." - }, - { - "value": "DeploymentCleanup", - "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." - } - ] - } - }, - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { + "id": { "readOnly": true, "type": "string", - "description": "Deployment operation service request id." + "description": "The tag value ID." }, - "statusCode": { - "readOnly": true, + "tagValue": { "type": "string", - "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." - }, - "statusMessage": { - "readOnly": true, - "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", - "$ref": "#/definitions/StatusMessage" - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." + "description": "The tag value." }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." + "count": { + "$ref": "#/definitions/TagCount", + "description": "The tag value count." } }, - "description": "Deployment operation properties." + "x-ms-azure-resource": true, + "description": "Tag information." }, - "DeploymentOperation": { + "TagDetails": { "properties": { "id": { "readOnly": true, "type": "string", - "description": "Full deployment operation ID." + "description": "The tag name ID." }, - "operationId": { - "readOnly": true, + "tagName": { "type": "string", - "description": "Deployment operation ID." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." + "count": { + "$ref": "#/definitions/TagCount", + "description": "The total number of resources that use the resource tag. When a tag is initially created and has no associated resources, the value is 0." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/TagValue" + }, + "description": "The list of tag values." } }, - "description": "Deployment operation information." + "x-ms-azure-resource": true, + "description": "Tag details." }, - "DeploymentOperationsListResult": { + "TagsListResult": { "properties": { "value": { "type": "array", "items": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" }, - "description": "An array of deployment operations." + "description": "An array of tags." }, "nextLink": { "readOnly": true, @@ -6240,7 +2953,7 @@ "description": "The URL to use for getting the next set of results." } }, - "description": "List of deployment operations." + "description": "List of subscription tags." }, "ResourceProviderOperationDisplayProperties": { "properties": { @@ -6384,225 +3097,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, - "WhatIfPropertyChange": { - "required": [ - "path", - "propertyChangeType" - ], - "properties": { - "path": { - "type": "string", - "description": "The path of the property." - }, - "propertyChangeType": { - "type": "string", - "description": "The type of property change.", - "enum": [ - "Create", - "Delete", - "Modify", - "Array", - "NoEffect" - ], - "x-ms-enum": { - "name": "PropertyChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." - }, - { - "value": "Modify", - "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." - }, - { - "value": "Array", - "description": "The property is an array and contains nested changes." - }, - { - "value": "NoEffect", - "description": "The property will not be set or updated." - } - ] - } - }, - "before": { - "type": "object", - "description": "The value of the property before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The value of the property after the deployment is executed." - }, - "children": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "Nested property changes." - } - }, - "description": "The predicted change to the resource property." - }, - "WhatIfChange": { - "description": "Information about a single resource change predicted by What-If operation.", - "required": [ - "changeType" - ], - "properties": { - "resourceId": { - "type": "string", - "description": "Resource ID" - }, - "deploymentId": { - "type": "string", - "description": "The resource id of the Deployment responsible for this change." - }, - "symbolicName": { - "type": "string", - "description": "The symbolic name of the resource responsible for this change." - }, - "identifiers": { - "type": "object", - "description": "A subset of properties that uniquely identify a Bicep extensible resource because it lacks a resource id like an Azure resource has." - }, - "changeType": { - "type": "string", - "description": "Type of change that will be made to the resource when the deployment is executed.", - "enum": [ - "Create", - "Delete", - "Ignore", - "Deploy", - "NoChange", - "Modify", - "Unsupported" - ], - "x-ms-enum": { - "name": "ChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." - }, - { - "value": "Ignore", - "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." - }, - { - "value": "Deploy", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." - }, - { - "value": "NoChange", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." - }, - { - "value": "Modify", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." - }, - { - "value": "Unsupported", - "description": "The resource is not supported by What-If." - } - ] - } - }, - "unsupportedReason": { - "type": "string", - "description": "The explanation about why the resource is unsupported by What-If." - }, - "before": { - "type": "object", - "description": "The snapshot of the resource before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The predicted snapshot of the resource after the deployment is executed." - }, - "delta": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "The predicted changes to resource properties." - } - } - }, - "WhatIfOperationProperties": { - "description": "Deployment operation properties.", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "description": "List of resource changes predicted by What-If operation." - }, - "potentialChanges": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "description": "List of resource changes predicted by What-If operation." - }, - "diagnostics": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/DeploymentDiagnosticsDefinition" - }, - "description": "List of resource diagnostics detected by What-If operation." - } - } - }, - "WhatIfOperationResult": { - "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", - "properties": { - "status": { - "type": "string", - "description": "Status of the What-If operation." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/WhatIfOperationProperties", - "description": "What-If operation properties." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error when What-If operation fails." - } - } - }, "Tags": { "description": "A dictionary of name and value pairs.", "properties": { @@ -6819,38 +3313,6 @@ } } }, - "StatusMessage": { - "type": "object", - "description": "Operation status message object.", - "properties": { - "status": { - "type": "string", - "description": "Status of the deployment operation." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The error reported by the operation." - } - } - }, - "ExpressionEvaluationOptions": { - "properties": { - "scope": { - "type": "string", - "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", - "enum": [ - "NotSpecified", - "Outer", - "Inner" - ], - "x-ms-enum": { - "name": "ExpressionEvaluationOptionsScopeType", - "modelAsString": true - } - } - }, - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." - }, "ZoneMapping": { "type": "object", "properties": { @@ -6865,33 +3327,6 @@ } } } - }, - "ValidationLevel": { - "type": "string", - "description": "The level of validation performed on the deployment.", - "enum": [ - "Template", - "Provider", - "ProviderNoRbac" - ], - "x-ms-enum": { - "name": "ValidationLevel", - "modelAsString": true, - "values": [ - { - "description": "Static analysis of the template is performed.", - "value": "Template" - }, - { - "description": "Static analysis of the template is performed and resource declarations are sent to resource providers for semantic validation. Validates that the caller has RBAC write permissions on each resource.", - "value": "Provider" - }, - { - "description": "Static analysis of the template is performed and resource declarations are sent to resource providers for semantic validation. Skips validating that the caller has RBAC write permissions on each resource.", - "value": "ProviderNoRbac" - } - ] - } } }, "parameters": { @@ -6921,17 +3356,6 @@ "type": "string", "description": "The Microsoft Azure subscription ID." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/resources.json index 8dfe4463eb86..2ba371469afc 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2025-03-01/resources.json @@ -65,31 +65,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -97,32 +100,34 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true - }, - "head": { + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CheckExistenceAtScope", - "description": "Checks whether the deployment exists.", + "operationId": "Providers_RegisterAtManagementGroupScope", + "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/GroupIdParameter" } ], "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "200": { + "description": "OK - Returns information about the resource provider." }, "default": { "description": "Error response describing why the operation failed.", @@ -131,45 +136,35 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtScope", - "summary": "Deploys resources at a given scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_ProviderPermissions", + "description": "Get the provider permissions.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information on the provider permissions.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderPermissionListResult" } }, "default": { @@ -179,35 +174,49 @@ } } }, - "x-ms-long-running-operation": true, "x-ms-examples": { - "Create deployment at a given scope.": { - "$ref": "./examples/PutDeploymentAtScope.json" + "Get provider resource types.": { + "$ref": "./examples/GetProviderPermissions.json" } } - }, - "get": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtScope", - "description": "Gets a deployment.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "properties", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ProviderRegistrationRequest" + }, + "description": "The third party consent for S2S." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } }, "default": { @@ -219,28 +228,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/subscriptions/{subscriptionId}/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -248,32 +263,31 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get providers.": { + "$ref": "./examples/GetProviders.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -281,18 +295,9 @@ ], "responses": { "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "The template deployment validation detected failures.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -302,36 +307,45 @@ } } }, - "x-ms-examples": { - "Validates a template at scope": { - "$ref": "./examples/PostDeploymentValidateOnScope.json" - } + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -340,44 +354,48 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get provider.": { + "$ref": "./examples/GetProvider.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ListAtScope", - "description": "Get all the deployments at the given scope.", + "operationId": "ProviderResourceTypes_List", + "description": "List the resource types for a specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns resource types information for the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ProviderResourceTypeListResult" } }, "default": { @@ -387,34 +405,113 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-examples": { + "Get provider resource types.": { + "$ref": "./examples/GetProviderResourceTypes.json" + } + } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtTenantScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "x-ms-examples": { + "Get a resource provider at tenant scope": { + "$ref": "./examples/GetNamedProviderAtTenant.json" + } + }, + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/ApiVersionParameter" - } + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, - "204": { - "description": "No Content" + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { + "get": { + "tags": [ + "ResourceGroups" + ], + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resources", + "schema": { + "$ref": "#/definitions/ResourceListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -423,20 +520,35 @@ } } }, - "x-ms-long-running-operation": true - }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistenceAtTenantScope", - "description": "Checks whether the deployment exists.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -456,39 +568,53 @@ }, "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdateAtTenantScope", - "summary": "Deploys resources at tenant scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -497,33 +623,59 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at tenant scope.": { - "$ref": "./examples/PutDeploymentAtTenant.json" - } } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtTenantScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "forceDeletionTypes", + "in": "query", + "required": false, + "type": "string", + "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], + "x-ms-examples": { + "Force delete all the Virtual Machines in a resource group": { + "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" + }, + "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { + "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" + } + }, "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" + "description": "OK" + }, + "202": { + "description": "Accepted", + "headers": { + "location": { + "type": "string", + "description": "URL to get status of this long-running operation." + } } }, "default": { @@ -532,28 +684,39 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtTenantScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -562,47 +725,46 @@ } } } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtTenantScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "The template deployment validation detected failures.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -611,121 +773,84 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-examples": { - "Validates a template at tenant scope": { - "$ref": "./examples/PostDeploymentValidateOnTenant.json" - } } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_WhatIfAtTenantScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/ExportTemplateRequest" }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "Parameters for exporting the template." } ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtTenantScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" }, - { - "$ref": "#/parameters/ApiVersionParameter" + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + }, + "Export a resource group as Bicep": { + "$ref": "./examples/ExportResourceGroupAsBicep.json" } - ], + }, "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/ResourceGroupExportResult" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" } } }, - "/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtTenantScope", - "description": "Get all the deployments at the tenant scope.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -733,17 +858,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } }, "default": { @@ -756,31 +884,47 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be moved.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" @@ -793,77 +937,102 @@ } }, "x-ms-long-running-operation": true - }, - "head": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - }, - "put": { + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resources": { + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Additional parameters supplied to the operation." + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of recommendations per page if a paged version of this API is being used." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -873,69 +1042,79 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, - "get": { + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "204": { "description": "No Content" }, + "404": { + "description": "Not Found" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -943,51 +1122,75 @@ } } } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "name": "parameters", - "in": "body", + "name": "parentResourcePath", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to delete." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "description": "OK" }, "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + "description": "Accepted" }, - "400": { - "description": "The template deployment validation detected failures.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -996,60 +1199,92 @@ } } }, - "x-ms-examples": { - "Validates a template at management group scope": { - "$ref": "./examples/PostDeploymentValidateOnManagementGroup.json" - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_WhatIfAtManagementGroupScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to create." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/GenericResource" }, - "description": "Parameters to validate." + "description": "Parameters for creating or updating the resource." }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns What-If operation status", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/WhatIfOperationResult" + "$ref": "#/definitions/GenericResource" } }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -1057,88 +1292,86 @@ } } }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true }, { - "name": "$filter", - "in": "query", - "required": false, + "name": "resourceName", + "in": "path", + "required": true, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The name of the resource to update." }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for updating the resource." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -1146,37 +1379,73 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -1184,24 +1453,32 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true - }, + } + } + }, + "/{resourceId}": { "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -1219,46 +1496,98 @@ } } }, - "put": { + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "parameters", - "in": "body", + "name": "api-version", + "in": "query", "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "put": { + "tags": [ + "Resources" + ], + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", + "parameters": [ + { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/GenericResource" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -1266,68 +1595,90 @@ } } }, - "x-ms-examples": { - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" - } - }, "x-ms-long-running-operation": true }, - "get": { + "patch": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -1338,26 +1689,28 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Tags_DeleteValue", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "parameters", - "in": "body", + "name": "tagValue", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1368,19 +1721,10 @@ ], "responses": { "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + "description": "Predefined tag value successfully deleted." }, - "400": { - "description": "The template deployment validation detected failures.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "204": { + "description": "Predefined tag value did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -1388,33 +1732,29 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-examples": { - "Validates a template at subscription scope": { - "$ref": "./examples/PostDeploymentValidateOnSubscription.json" - } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { + }, + "put": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_WhatIfAtSubscriptionScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "operationId": "Tags_CreateOrUpdateValue", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "parameters", - "in": "body", + "name": "tagValue", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to What If." + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1425,22 +1765,15 @@ ], "responses": { "200": { - "description": "OK - Returns What-If operation status", + "description": "Predefined tag value already exists. Returns information about the predefined tag value.", "schema": { - "$ref": "#/definitions/WhatIfOperationResult" + "$ref": "#/definitions/TagValue" } }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } + "201": { + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" } }, "default": { @@ -1449,28 +1782,24 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-examples": { - "Predict template changes at subscription scope": { - "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1481,9 +1810,15 @@ ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/TagDetails" } }, "default": { @@ -1493,30 +1828,21 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { - "get": { + }, + "delete": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", + "operationId": "Tags_Delete", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", "parameters": [ { - "name": "$filter", - "in": "query", - "required": false, + "name": "tagName", + "in": "path", + "required": true, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1527,10 +1853,10 @@ ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } + "description": "Predefined tag name successfully deleted." + }, + "204": { + "description": "Predefined tag name did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -1538,35 +1864,18 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Tags_List", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -1575,11 +1884,11 @@ } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of tag names and values.", + "schema": { + "$ref": "#/definitions/TagsListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -1588,41 +1897,50 @@ } } }, - "x-ms-long-running-operation": true - }, - "head": { + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Resources/tags/default": { + "put": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", + "operationId": "Tags_CreateOrUpdateAtScope", + "summary": "Creates or updates the entire set of tags on a resource or subscription.", + "description": "This operation allows adding or replacing the entire set of tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ScopeParameter" }, { "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "Tags updated successfully. Returns tags from the specified object.", + "schema": { + "$ref": "#/definitions/TagsResource" + } }, - "404": { - "description": "Not Found" + "202": { + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + } + }, + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -1630,57 +1948,55 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update tags on a resource": { + "$ref": "./examples/PutTagsResource.json" + }, + "Update tags on a subscription": { + "$ref": "./examples/PutTagsSubscription.json" + } } }, - "put": { + "patch": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Tags_UpdateAtScope", + "summary": "Selectively updates the set of tags on a resource or subscription.", + "description": "This operation allows replacing, merging or selectively deleting tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags at the end of the operation. The 'replace' option replaces the entire set of existing tags with a new set. The 'merge' option allows adding tags with new names and updating the values of tags with existing names. The 'delete' option allows selectively deleting tags based on given names or name/value pairs.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 + "$ref": "#/parameters/ScopeParameter" }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "#/definitions/TagsPatchResource" + } } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "Tags updated successfully. Returns tags from the specified object.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/TagsResource" } }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "202": { + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + } + }, + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -1689,54 +2005,35 @@ } } }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - }, - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" + "Update tags on a resource": { + "$ref": "./examples/PatchTagsResource.json" }, - "Create a deployment that will deploy a template with a uri and queryString": { - "$ref": "./examples/PutDeploymentResourceGroup.json" + "Update tags on a subscription": { + "$ref": "./examples/PatchTagsSubscription.json" } - }, - "x-ms-long-running-operation": true + } }, "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", + "operationId": "Tags_GetAtScope", + "summary": "Gets the entire set of tags on a resource or subscription.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ScopeParameter" }, { "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "Returns tags from the specified object.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/TagsResource" } }, "default": { @@ -1745,175 +2042,42 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get tags on a resource": { + "$ref": "./examples/GetTagsResource.json" + }, + "Get tags on a subscription": { + "$ref": "./examples/GetTagsSubscription.json" + } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "The template deployment validation detected failures.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Validates a template at resource group scope": { - "$ref": "./examples/PostDeploymentValidateOnResourceGroup.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIf", - "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", + "operationId": "Tags_DeleteAtScope", + "summary": "Deletes the entire set of tags on a resource or subscription.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to validate." + "$ref": "#/parameters/ScopeParameter" }, { "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } + "description": "Tags successfully deleted." }, "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", "headers": { "Location": { "type": "string", "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." } - } + }, + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -1922,3729 +2086,419 @@ } } }, - "x-ms-examples": { - "Predict template changes at resource group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" - } - }, "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } + "x-ms-examples": { + "Update tags on a resource": { + "$ref": "./examples/DeleteTagsResource.json" }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } + "Update tags on a subscription": { + "$ref": "./examples/DeleteTagsSubscription.json" } } } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } + } + }, + "definitions": { + "GenericResourceFilter": { + "properties": { + "resourceType": { + "type": "string", + "description": "The resource type." }, - "x-ms-pageable": { - "nextLinkName": "nextLink" + "tagname": { + "type": "string", + "description": "The tag name." }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } + "tagvalue": { + "type": "string", + "description": "The tag value." + } + }, + "description": "Resource filter." }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_RegisterAtManagementGroupScope", - "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/GroupIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ProviderPermissions", - "description": "Get the provider permissions.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information on the provider permissions.", - "schema": { - "$ref": "#/definitions/ProviderPermissionListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderPermissions.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "properties", - "in": "body", - "required": false, - "schema": { - "$ref": "#/definitions/ProviderRegistrationRequest" - }, - "description": "The third party consent for S2S." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Get providers.": { - "$ref": "./examples/GetProviders.json" - } - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider.": { - "$ref": "./examples/GetProvider.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "ProviderResourceTypes_List", - "description": "List the resource types for a specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns resource types information for the resource provider.", - "schema": { - "$ref": "#/definitions/ProviderResourceTypeListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderResourceTypes.json" - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "x-ms-examples": { - "Get a resource provider at tenant scope": { - "$ref": "./examples/GetNamedProviderAtTenant.json" - } - }, - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "forceDeletionTypes", - "in": "query", - "required": false, - "type": "string", - "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "x-ms-examples": { - "Force delete all the Virtual Machines in a resource group": { - "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" - }, - "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { - "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" - } - }, - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted", - "headers": { - "location": { - "type": "string", - "description": "URL to get status of this long-running operation." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - }, - "Export a resource group as Bicep": { - "$ref": "./examples/ExportResourceGroupAsBicep.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be moved.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of recommendations per page if a paged version of this API is being used." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to create." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Update", - "description": "Updates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to update.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to update." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Get", - "description": "Gets a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{resourceId}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "summary": "Deletes a predefined tag value for a predefined tag name.", - "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "name": "tagValue", - "in": "path", - "required": true, - "type": "string", - "description": "The value of the tag to delete." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value successfully deleted." - }, - "204": { - "description": "Predefined tag value did not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdateValue", - "summary": "Creates a predefined value for a predefined tag name.", - "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "name": "tagValue", - "in": "path", - "required": true, - "type": "string", - "description": "The value of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value already exists. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a predefined tag name.", - "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name already exists. Returns information about the predefined tag name.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - }, - "201": { - "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_Delete", - "summary": "Deletes a predefined tag name.", - "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name successfully deleted." - }, - "204": { - "description": "Predefined tag name did not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "summary": "Gets a summary of tag usage under the subscription.", - "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of tag names and values.", - "schema": { - "$ref": "#/definitions/TagsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtTenantScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtTenantScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." - } - ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the hash.", - "schema": { - "$ref": "#/definitions/TemplateHashResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{scope}/providers/Microsoft.Resources/tags/default": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdateAtScope", - "summary": "Creates or updates the entire set of tags on a resource or subscription.", - "description": "This operation allows adding or replacing the entire set of tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/TagsResource" - } - } - ], - "responses": { - "200": { - "description": "Tags updated successfully. Returns tags from the specified object.", - "schema": { - "$ref": "#/definitions/TagsResource" - } - }, - "202": { - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - } - }, - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Update tags on a resource": { - "$ref": "./examples/PutTagsResource.json" - }, - "Update tags on a subscription": { - "$ref": "./examples/PutTagsSubscription.json" - } - } - }, - "patch": { - "tags": [ - "Tags" - ], - "operationId": "Tags_UpdateAtScope", - "summary": "Selectively updates the set of tags on a resource or subscription.", - "description": "This operation allows replacing, merging or selectively deleting tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags at the end of the operation. The 'replace' option replaces the entire set of existing tags with a new set. The 'merge' option allows adding tags with new names and updating the values of tags with existing names. The 'delete' option allows selectively deleting tags based on given names or name/value pairs.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/TagsPatchResource" - } - } - ], - "responses": { - "200": { - "description": "Tags updated successfully. Returns tags from the specified object.", - "schema": { - "$ref": "#/definitions/TagsResource" - } - }, - "202": { - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - } - }, - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Update tags on a resource": { - "$ref": "./examples/PatchTagsResource.json" - }, - "Update tags on a subscription": { - "$ref": "./examples/PatchTagsSubscription.json" - } - } - }, - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_GetAtScope", - "summary": "Gets the entire set of tags on a resource or subscription.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Returns tags from the specified object.", - "schema": { - "$ref": "#/definitions/TagsResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get tags on a resource": { - "$ref": "./examples/GetTagsResource.json" - }, - "Get tags on a subscription": { - "$ref": "./examples/GetTagsSubscription.json" - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteAtScope", - "summary": "Deletes the entire set of tags on a resource or subscription.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Tags successfully deleted." - }, - "202": { - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - } - }, - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Update tags on a resource": { - "$ref": "./examples/DeleteTagsResource.json" - }, - "Update tags on a subscription": { - "$ref": "./examples/DeleteTagsSubscription.json" - } - } - } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy. Use either the uri or id property, but not both." - }, - "id": { - "type": "string", - "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." - }, - "relativePath": { - "type": "string", - "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - }, - "queryString": { - "type": "string", - "description": "The query string (for example, a SAS token) to be used with the templateLink URI." - } - }, - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/DeploymentParameter" - }, - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "extensionConfigs": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/DeploymentExtensionConfig" - }, - "description": "The configurations to use for deployment extensions. The keys of this object are deployment extension aliases as defined in the deployment template." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - }, - "expressionEvaluationOptions": { - "$ref": "#/definitions/ExpressionEvaluationOptions", - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." - }, - "validationLevel": { - "$ref": "#/definitions/ValidationLevel", - "description": "The validation level of the deployment" - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DeploymentParameter": { - "type": "object", - "properties": { - "value": { - "description": "Input value to the parameter ." - }, - "reference": { - "$ref": "#/definitions/KeyVaultParameterReference", - "description": "Azure Key Vault parameter reference." - } - }, - "description": "Deployment parameter for the template." - }, - "KeyVaultParameterReference": { - "type": "object", - "properties": { - "keyVault": { - "$ref": "#/definitions/KeyVaultReference", - "description": "Azure Key Vault reference." - }, - "secretName": { - "type": "string", - "description": "Azure Key Vault secret name." - }, - "secretVersion": { - "type": "string", - "description": "Azure Key Vault secret version." - } - }, - "required": [ - "keyVault", - "secretName" - ], - "description": "Azure Key Vault parameter reference." - }, - "KeyVaultReference": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Azure Key Vault resource id." - } - }, - "required": [ - "id" - ], - "description": "Azure Key Vault reference." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - }, - "description": "The debug setting." - }, - "Deployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "ScopedDeployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "DeploymentWhatIf": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "ScopedDeploymentWhatIf": { + "ResourceGroupFilter": { "properties": { - "location": { + "tagName": { "type": "string", - "description": "The location to store the deployment data." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "DeploymentWhatIfProperties": { - "properties": { - "whatIfSettings": { - "$ref": "#/definitions/DeploymentWhatIfSettings", - "description": "Optional What-If operation settings." - } - }, - "allOf": [ - { - "$ref": "#/definitions/DeploymentProperties" - } - ], - "description": "Deployment What-if properties." - }, - "DeploymentWhatIfSettings": { - "properties": { - "resultFormat": { + "tagValue": { "type": "string", - "description": "The format of the What-If results", - "enum": [ - "ResourceIdOnly", - "FullResourcePayloads" - ], - "x-ms-enum": { - "name": "WhatIfResultFormat", - "modelAsString": false - } - } - }, - "description": "Deployment What-If operation settings." - }, - "CloudError": { - "x-ms-external": true, - "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "description": "The tag value." } }, - "description": "An error response for a resource management request." - }, - "ApiProfile": { - "properties": { - "profileVersion": { - "type": "string", - "readOnly": true, - "description": "The profile version." - }, - "apiVersion": { - "type": "string", - "readOnly": true, - "description": "The API version." - } - } - }, - "AliasPathMetadata": { - "properties": { - "type": { - "type": "string", - "readOnly": true, - "enum": [ - "NotSpecified", - "Any", - "String", - "Object", - "Array", - "Integer", - "Number", - "Boolean" - ], - "x-ms-enum": { - "name": "AliasPathTokenType", - "modelAsString": true, - "values": [ - { - "value": "NotSpecified", - "description": "The token type is not specified." - }, - { - "value": "Any", - "description": "The token type can be anything." - }, - { - "value": "String", - "description": "The token type is string." - }, - { - "value": "Object", - "description": "The token type is object." - }, - { - "value": "Array", - "description": "The token type is array." - }, - { - "value": "Integer", - "description": "The token type is integer." - }, - { - "value": "Number", - "description": "The token type is number." - }, - { - "value": "Boolean", - "description": "The token type is boolean." - } - ] - }, - "description": "The type of the token that the alias path is referring to." - }, - "attributes": { - "type": "string", - "readOnly": true, - "enum": [ - "None", - "Modifiable" - ], - "x-ms-enum": { - "name": "AliasPathAttributes", - "modelAsString": true, - "values": [ - { - "value": "None", - "description": "The token that the alias path is referring to has no attributes." - }, - { - "value": "Modifiable", - "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." - } - ] - }, - "description": "The attributes of the token that the alias path is referring to." - } - } - }, - "AliasPath": { - "properties": { - "path": { - "type": "string", - "description": "The path of an alias." - }, - "apiVersions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The API versions." - }, - "pattern": { - "$ref": "#/definitions/AliasPattern", - "description": "The pattern for an alias path." - }, - "metadata": { - "readOnly": true, - "$ref": "#/definitions/AliasPathMetadata", - "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." + "description": "Resource group filter." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } }, - "description": "The type of the paths for alias." + "description": "An error response for a resource management request." }, - "AliasPattern": { + "ApiProfile": { "properties": { - "phrase": { - "type": "string", - "description": "The alias pattern phrase." - }, - "variable": { + "profileVersion": { "type": "string", - "description": "The alias pattern variable." + "readOnly": true, + "description": "The profile version." }, - "type": { + "apiVersion": { "type": "string", - "enum": [ - "NotSpecified", - "Extract" - ], - "x-ms-enum": { - "name": "AliasPatternType", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "NotSpecified is not allowed." - }, - { - "value": "Extract", - "description": "Extract is the only allowed value." - } - ] - }, - "description": "The type of alias pattern" + "readOnly": true, + "description": "The API version." } - }, - "description": "The type of the pattern for an alias path." + } }, - "Alias": { + "AliasPathMetadata": { "properties": { - "name": { - "type": "string", - "description": "The alias name." - }, - "paths": { - "type": "array", - "items": { - "$ref": "#/definitions/AliasPath" - }, - "x-ms-identifiers": [], - "description": "The paths for an alias." - }, "type": { "type": "string", - "description": "The type of the alias.", + "readOnly": true, "enum": [ "NotSpecified", - "PlainText", - "Mask" + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" ], "x-ms-enum": { - "name": "AliasType", - "modelAsString": false, + "name": "AliasPathTokenType", + "modelAsString": true, "values": [ { "value": "NotSpecified", - "description": "Alias type is unknown (same as not providing alias type)." + "description": "The token type is not specified." }, { - "value": "PlainText", - "description": "Alias value is not secret." + "value": "Any", + "description": "The token type can be anything." }, { - "value": "Mask", - "description": "Alias value is secret." + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." } ] - } - }, - "defaultPath": { - "type": "string", - "description": "The default path for an alias." - }, - "defaultPattern": { - "$ref": "#/definitions/AliasPattern", - "description": "The default pattern for an alias." - }, - "defaultMetadata": { - "readOnly": true, - "$ref": "#/definitions/AliasPathMetadata", - "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" - } - }, - "description": "The alias type. " - }, - "ProviderExtendedLocation": { - "properties": { - "location": { - "type": "string", - "description": "The azure location." - }, - "type": { - "type": "string", - "description": "The extended location type." - }, - "extendedLocations": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The extended locations for the azure location." - } - }, - "description": "The provider extended location. " - }, - "ProviderResourceType": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "locations": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The collection of locations where this resource type can be created." - }, - "locationMappings": { - "type": "array", - "items": { - "$ref": "#/definitions/ProviderExtendedLocation" - }, - "x-ms-identifiers": [ - "location", - "type" - ], - "description": "The location mappings that are supported by this resource type." - }, - "aliases": { - "type": "array", - "items": { - "$ref": "#/definitions/Alias" - }, - "x-ms-identifiers": [ - "name" - ], - "description": "The aliases that are supported by this resource type." - }, - "apiVersions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The API version." - }, - "defaultApiVersion": { - "type": "string", - "readOnly": true, - "description": "The default API version." - }, - "zoneMappings": { - "type": "array", - "items": { - "$ref": "#/definitions/ZoneMapping" }, - "x-ms-identifiers": [ - "location" - ] - }, - "apiProfiles": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ApiProfile" - }, - "x-ms-identifiers": [ - "apiVersion", - "profileVersion" - ], - "description": "The API profiles for the resource provider." - }, - "capabilities": { - "type": "string", - "description": "The additional capabilities offered by this resource type." - }, - "properties": { - "type": "object", - "additionalProperties": { - "type": "string", - "description": "The additional properties. " - }, - "description": "The properties." - } - }, - "description": "Resource type managed by the resource provider." - }, - "Provider": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The provider ID." - }, - "namespace": { - "type": "string", - "description": "The namespace of the resource provider." - }, - "registrationState": { - "readOnly": true, - "type": "string", - "description": "The registration state of the resource provider." - }, - "registrationPolicy": { - "readOnly": true, - "type": "string", - "description": "The registration policy of the resource provider." - }, - "resourceTypes": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/ProviderResourceType" - }, - "x-ms-identifiers": [ - "resourceType" - ], - "description": "The collection of provider resource types." + "description": "The type of the token that the alias path is referring to." }, - "providerAuthorizationConsentState": { + "attributes": { "type": "string", + "readOnly": true, "enum": [ - "NotSpecified", - "Required", - "NotRequired", - "Consented" + "None", + "Modifiable" ], - "description": "The provider authorization consent state.", "x-ms-enum": { - "name": "ProviderAuthorizationConsentState", - "modelAsString": true - } + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." } - }, - "description": "Resource provider information." + } }, - "BasicDependency": { + "AliasPath": { "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { + "path": { "type": "string", - "description": "The dependency resource type." + "description": "The path of an alias." }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { + "apiVersions": { "type": "array", "items": { - "$ref": "#/definitions/BasicDependency" + "type": "string" }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." + "description": "The API versions." }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." } }, - "description": "Deployment dependency information." + "description": "The type of the paths for alias." }, - "DeploymentDiagnosticsDefinition": { - "type": "object", - "required": [ - "level", - "code", - "message" - ], + "AliasPattern": { "properties": { - "level": { - "type": "string", - "readOnly": true, - "description": "Denotes the additional response level.", - "enum": [ - "Warning", - "Info", - "Error" - ], - "x-ms-enum": { - "name": "Level", - "modelAsString": true - } - }, - "code": { - "readOnly": true, - "type": "string", - "description": "The error code." - }, - "message": { - "readOnly": true, + "phrase": { "type": "string", - "description": "The error message." + "description": "The alias pattern phrase." }, - "target": { - "readOnly": true, + "variable": { "type": "string", - "description": "The error target." + "description": "The alias pattern variable." }, - "additionalInfo": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorAdditionalInfo" - }, - "x-ms-identifiers": [], - "description": "The error additional info." - } - } - }, - "DeploymentPropertiesExtended": { - "properties": { - "provisioningState": { + "type": { "type": "string", - "readOnly": true, - "description": "Denotes the state of provisioning.", "enum": [ "NotSpecified", - "Accepted", - "Running", - "Ready", - "Creating", - "Created", - "Deleting", - "Deleted", - "Canceled", - "Failed", - "Succeeded", - "Updating" + "Extract" ], "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true - } - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "readOnly": true, - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] }, - "description": "The list of deployment dependencies." - }, - "templateLink": { - "readOnly": true, - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template." - }, - "parameters": { - "readOnly": true, - "type": "object", - "description": "Deployment parameters. " - }, - "parametersLink": { - "readOnly": true, - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. " + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." + }, + "Alias": { + "properties": { + "name": { + "type": "string", + "description": "The alias name." }, - "extensions": { - "readOnly": true, + "paths": { "type": "array", "items": { - "$ref": "#/definitions/DeploymentExtensionDefinition" + "$ref": "#/definitions/AliasPath" }, - "description": "The extensions used in this deployment." + "x-ms-identifiers": [], + "description": "The paths for an alias." }, - "mode": { - "readOnly": true, + "type": { "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", + "description": "The type of the alias.", "enum": [ - "Incremental", - "Complete" + "NotSpecified", + "PlainText", + "Mask" ], "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] } }, - "debugSetting": { - "readOnly": true, - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "readOnly": true, - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "templateHash": { - "readOnly": true, + "defaultPath": { "type": "string", - "description": "The hash produced for the template." - }, - "outputResources": { - "readOnly": true, - "type": "array", - "description": "Array of provisioned resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of provisioned resources." - } - }, - "validatedResources": { - "readOnly": true, - "type": "array", - "description": "Array of validated resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of validated resources." - } + "description": "The default path for an alias." }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." }, - "diagnostics": { - "type": "array", + "defaultMetadata": { "readOnly": true, - "items": { - "$ref": "#/definitions/DeploymentDiagnosticsDefinition" - }, - "description": "Contains diagnostic information collected during validation process." - }, - "validationLevel": { - "$ref": "#/definitions/ValidationLevel", - "description": "The validation level of the deployment" + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" } }, - "description": "Deployment properties with additional details." + "description": "The alias type. " }, - "ResourceReference": { - "description": "The resource Id model.", + "ProviderExtendedLocation": { "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The fully qualified Azure resource ID." - }, - "extension": { - "readOnly": true, - "$ref": "#/definitions/DeploymentExtensionDefinition", - "description": "The key of the extension the resource was deployed with." - }, - "resourceType": { - "readOnly": true, + "location": { "type": "string", - "description": "The resource type." - }, - "identifiers": { - "readOnly": true, - "type": "object", - "description": "The extensible resource identifiers." + "description": "The azure location." }, - "apiVersion": { - "readOnly": true, - "type": "string", - "description": "The API version the resource was deployed with." - } - } - }, - "OnErrorDeployment": { - "properties": { "type": { "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } + "description": "The extended location type." }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." } }, - "description": "Deployment on error behavior." + "description": "The provider extended location. " }, - "OnErrorDeploymentExtended": { + "ProviderResourceType": { "properties": { - "provisioningState": { - "readOnly": true, + "resourceType": { "type": "string", - "description": "The state of the provisioning for the on error deployment." + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "x-ms-identifiers": [ + "location", + "type" + ], + "description": "The location mappings that are supported by this resource type." }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "x-ms-identifiers": [ + "name" ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." }, - "deploymentName": { + "defaultApiVersion": { "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment validation error." + "description": "The default API version." }, - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + }, + "x-ms-identifiers": [ + "location" + ] }, - "name": { + "apiProfiles": { + "type": "array", "readOnly": true, - "type": "string", - "description": "The name of the deployment." + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "x-ms-identifiers": [ + "apiVersion", + "profileVersion" + ], + "description": "The API profiles for the resource provider." }, - "type": { - "readOnly": true, + "capabilities": { "type": "string", - "description": "The type of the deployment." + "description": "The additional capabilities offered by this resource type." }, "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." } }, - "description": "Information from validate template deployment response." + "description": "Resource type managed by the resource provider." }, - "DeploymentExtended": { + "Provider": { "properties": { "id": { "readOnly": true, "type": "string", - "description": "The ID of the deployment." + "description": "The provider ID." }, - "name": { - "readOnly": true, + "namespace": { "type": "string", - "description": "The name of the deployment." + "description": "The namespace of the resource provider." }, - "type": { + "registrationState": { "readOnly": true, "type": "string", - "description": "The type of the deployment." + "description": "The registration state of the resource provider." }, - "location": { + "registrationPolicy": { + "readOnly": true, "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." + "description": "The registration policy of the resource provider." }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { + "resourceTypes": { + "readOnly": true, "type": "array", "items": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderResourceType" }, - "description": "An array of deployments." + "x-ms-identifiers": [ + "resourceType" + ], + "description": "The collection of provider resource types." }, - "nextLink": { - "readOnly": true, + "providerAuthorizationConsentState": { "type": "string", - "description": "The URL to use for getting the next set of results." + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } } }, - "description": "List of deployments." + "description": "Resource provider information." }, "ProviderListResult": { "properties": { @@ -6034,256 +2888,64 @@ }, "value": { "type": "integer", - "description": "Value of count." - } - }, - "description": "Tag count." - }, - "TagValue": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The tag value ID." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - }, - "count": { - "$ref": "#/definitions/TagCount", - "description": "The tag value count." - } - }, - "x-ms-azure-resource": true, - "description": "Tag information." - }, - "TagDetails": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The tag name ID." - }, - "tagName": { - "type": "string", - "description": "The tag name." - }, - "count": { - "$ref": "#/definitions/TagCount", - "description": "The total number of resources that use the resource tag. When a tag is initially created and has no associated resources, the value is 0." - }, - "values": { - "type": "array", - "items": { - "$ref": "#/definitions/TagValue" - }, - "description": "The list of tag values." - } - }, - "x-ms-azure-resource": true, - "description": "Tag details." - }, - "TagsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/TagDetails" - }, - "description": "An array of tags." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of subscription tags." - }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The Azure resource ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - }, - "extension": { - "$ref": "#/definitions/DeploymentExtensionDefinition", - "description": "The extension the resource was deployed with." - }, - "identifiers": { - "type": "object", - "description": "The extensible resource identifiers." - }, - "apiVersion": { - "type": "string", - "description": "The API version the resource was deployed with." - }, - "symbolicName": { - "type": "string", - "description": "The symbolic name of the resource as defined in the deployment template." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningOperation": { - "readOnly": true, - "type": "string", - "description": "The name of the current provisioning operation.", - "enum": [ - "NotSpecified", - "Create", - "Delete", - "Waiting", - "AzureAsyncOperationWaiting", - "ResourceCacheWaiting", - "Action", - "Read", - "EvaluateDeploymentOutput", - "DeploymentCleanup" - ], - "x-ms-enum": { - "name": "ProvisioningOperation", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "The provisioning operation is not specified." - }, - { - "value": "Create", - "description": "The provisioning operation is create." - }, - { - "value": "Delete", - "description": "The provisioning operation is delete." - }, - { - "value": "Waiting", - "description": "The provisioning operation is waiting." - }, - { - "value": "AzureAsyncOperationWaiting", - "description": "The provisioning operation is waiting Azure async operation." - }, - { - "value": "ResourceCacheWaiting", - "description": "The provisioning operation is waiting for resource cache." - }, - { - "value": "Action", - "description": "The provisioning operation is action." - }, - { - "value": "Read", - "description": "The provisioning operation is read." - }, - { - "value": "EvaluateDeploymentOutput", - "description": "The provisioning operation is evaluate output." - }, - { - "value": "DeploymentCleanup", - "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." - } - ] - } - }, - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { + "description": "Value of count." + } + }, + "description": "Tag count." + }, + "TagValue": { + "properties": { + "id": { "readOnly": true, "type": "string", - "description": "Deployment operation service request id." + "description": "The tag value ID." }, - "statusCode": { - "readOnly": true, + "tagValue": { "type": "string", - "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." - }, - "statusMessage": { - "readOnly": true, - "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", - "$ref": "#/definitions/StatusMessage" - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." + "description": "The tag value." }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." + "count": { + "$ref": "#/definitions/TagCount", + "description": "The tag value count." } }, - "description": "Deployment operation properties." + "x-ms-azure-resource": true, + "description": "Tag information." }, - "DeploymentOperation": { + "TagDetails": { "properties": { "id": { "readOnly": true, "type": "string", - "description": "Full deployment operation ID." + "description": "The tag name ID." }, - "operationId": { - "readOnly": true, + "tagName": { "type": "string", - "description": "Deployment operation ID." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." + "count": { + "$ref": "#/definitions/TagCount", + "description": "The total number of resources that use the resource tag. When a tag is initially created and has no associated resources, the value is 0." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/TagValue" + }, + "description": "The list of tag values." } }, - "description": "Deployment operation information." + "x-ms-azure-resource": true, + "description": "Tag details." }, - "DeploymentOperationsListResult": { + "TagsListResult": { "properties": { "value": { "type": "array", "items": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" }, - "description": "An array of deployment operations." + "description": "An array of tags." }, "nextLink": { "readOnly": true, @@ -6291,7 +2953,7 @@ "description": "The URL to use for getting the next set of results." } }, - "description": "List of deployment operations." + "description": "List of subscription tags." }, "ResourceProviderOperationDisplayProperties": { "properties": { @@ -6435,225 +3097,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, - "WhatIfPropertyChange": { - "required": [ - "path", - "propertyChangeType" - ], - "properties": { - "path": { - "type": "string", - "description": "The path of the property." - }, - "propertyChangeType": { - "type": "string", - "description": "The type of property change.", - "enum": [ - "Create", - "Delete", - "Modify", - "Array", - "NoEffect" - ], - "x-ms-enum": { - "name": "PropertyChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." - }, - { - "value": "Modify", - "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." - }, - { - "value": "Array", - "description": "The property is an array and contains nested changes." - }, - { - "value": "NoEffect", - "description": "The property will not be set or updated." - } - ] - } - }, - "before": { - "type": "object", - "description": "The value of the property before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The value of the property after the deployment is executed." - }, - "children": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "Nested property changes." - } - }, - "description": "The predicted change to the resource property." - }, - "WhatIfChange": { - "description": "Information about a single resource change predicted by What-If operation.", - "required": [ - "changeType" - ], - "properties": { - "resourceId": { - "type": "string", - "description": "Resource ID" - }, - "deploymentId": { - "type": "string", - "description": "The resource id of the Deployment responsible for this change." - }, - "symbolicName": { - "type": "string", - "description": "The symbolic name of the resource responsible for this change." - }, - "identifiers": { - "type": "object", - "description": "A subset of properties that uniquely identify a Bicep extensible resource because it lacks a resource id like an Azure resource has." - }, - "changeType": { - "type": "string", - "description": "Type of change that will be made to the resource when the deployment is executed.", - "enum": [ - "Create", - "Delete", - "Ignore", - "Deploy", - "NoChange", - "Modify", - "Unsupported" - ], - "x-ms-enum": { - "name": "ChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." - }, - { - "value": "Ignore", - "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." - }, - { - "value": "Deploy", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." - }, - { - "value": "NoChange", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." - }, - { - "value": "Modify", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." - }, - { - "value": "Unsupported", - "description": "The resource is not supported by What-If." - } - ] - } - }, - "unsupportedReason": { - "type": "string", - "description": "The explanation about why the resource is unsupported by What-If." - }, - "before": { - "type": "object", - "description": "The snapshot of the resource before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The predicted snapshot of the resource after the deployment is executed." - }, - "delta": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "The predicted changes to resource properties." - } - } - }, - "WhatIfOperationProperties": { - "description": "Deployment operation properties.", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "description": "List of resource changes predicted by What-If operation." - }, - "potentialChanges": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "description": "List of resource changes predicted by What-If operation." - }, - "diagnostics": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/DeploymentDiagnosticsDefinition" - }, - "description": "List of resource diagnostics detected by What-If operation." - } - } - }, - "WhatIfOperationResult": { - "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", - "properties": { - "status": { - "type": "string", - "description": "Status of the What-If operation." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/WhatIfOperationProperties", - "description": "What-If operation properties." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error when What-If operation fails." - } - } - }, "Tags": { "description": "A dictionary of name and value pairs.", "properties": { @@ -6870,38 +3313,6 @@ } } }, - "StatusMessage": { - "type": "object", - "description": "Operation status message object.", - "properties": { - "status": { - "type": "string", - "description": "Status of the deployment operation." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The error reported by the operation." - } - } - }, - "ExpressionEvaluationOptions": { - "properties": { - "scope": { - "type": "string", - "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", - "enum": [ - "NotSpecified", - "Outer", - "Inner" - ], - "x-ms-enum": { - "name": "ExpressionEvaluationOptionsScopeType", - "modelAsString": true - } - } - }, - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." - }, "ZoneMapping": { "type": "object", "properties": { @@ -6916,133 +3327,6 @@ } } } - }, - "ValidationLevel": { - "type": "string", - "description": "The level of validation performed on the deployment.", - "enum": [ - "Template", - "Provider", - "ProviderNoRbac" - ], - "x-ms-enum": { - "name": "ValidationLevel", - "modelAsString": true, - "values": [ - { - "description": "Static analysis of the template is performed.", - "value": "Template" - }, - { - "description": "Static analysis of the template is performed and resource declarations are sent to resource providers for semantic validation. Validates that the caller has RBAC write permissions on each resource.", - "value": "Provider" - }, - { - "description": "Static analysis of the template is performed and resource declarations are sent to resource providers for semantic validation. Skips validating that the caller has RBAC write permissions on each resource.", - "value": "ProviderNoRbac" - } - ] - } - }, - "DeploymentExtensionDefinition": { - "type": "object", - "properties": { - "alias": { - "readOnly": true, - "type": "string", - "description": "The alias of the extension as defined in the deployment template." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The extension name." - }, - "version": { - "readOnly": true, - "type": "string", - "description": "The extension version." - }, - "configId": { - "readOnly": true, - "type": "string", - "description": "The extension configuration ID. It uniquely identifies a deployment control plane within an extension." - }, - "config": { - "readOnly": true, - "$ref": "#/definitions/DeploymentExtensionConfig", - "description": "The extension configuration." - } - } - }, - "DeploymentExtensionConfig": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/DeploymentExtensionConfigItem" - }, - "description": "An extension configuration. Keys of the object are defined by an extension's configuration schema." - }, - "DeploymentExtensionConfigItem": { - "type": "object", - "properties": { - "type": { - "readOnly": true, - "$ref": "#/definitions/ExtensionConfigPropertyType", - "description": "The value type of the extension config property." - }, - "value": { - "description": "The value of the extension config property." - }, - "keyVaultReference": { - "$ref": "#/definitions/KeyVaultParameterReference", - "description": "The Azure Key Vault reference used to retrieve the secret value of the extension config property." - } - } - }, - "ExtensionConfigPropertyType": { - "type": "string", - "enum": [ - "String", - "Int", - "Bool", - "Array", - "Object", - "SecureString", - "SecureObject" - ], - "x-ms-enum": { - "name": "ExtensionConfigPropertyType", - "modelAsString": true, - "values": [ - { - "description": "Property type representing a string value.", - "value": "String" - }, - { - "description": "Property type representing an integer value.", - "value": "Int" - }, - { - "description": "Property type representing a boolean value.", - "value": "Bool" - }, - { - "description": "Property type representing an array value.", - "value": "Array" - }, - { - "description": "Property type representing an object value.", - "value": "Object" - }, - { - "description": "Property type representing a secure string value.", - "value": "SecureString" - }, - { - "description": "Property type representing a secure object value.", - "value": "SecureObject" - } - ] - } } }, "parameters": { @@ -7072,17 +3356,6 @@ "type": "string", "description": "The Microsoft Azure subscription ID." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/resources.json index 8f7b29ccf754..f5af640dd43a 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2025-04-01/resources.json @@ -65,31 +65,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Providers_Unregister", + "description": "Unregisters a subscription from a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to unregister." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -97,32 +100,34 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true - }, - "head": { + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CheckExistenceAtScope", - "description": "Checks whether the deployment exists.", + "operationId": "Providers_RegisterAtManagementGroupScope", + "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/GroupIdParameter" } ], "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" + "200": { + "description": "OK - Returns information about the resource provider." }, "default": { "description": "Error response describing why the operation failed.", @@ -131,45 +136,35 @@ } } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CreateOrUpdateAtScope", - "summary": "Deploys resources at a given scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Providers_ProviderPermissions", + "description": "Get the provider permissions.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", + "name": "resourceProviderNamespace", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information on the provider permissions.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderPermissionListResult" } }, "default": { @@ -179,35 +174,49 @@ } } }, - "x-ms-long-running-operation": true, "x-ms-examples": { - "Create deployment at a given scope.": { - "$ref": "./examples/PutDeploymentAtScope.json" + "Get provider resource types.": { + "$ref": "./examples/GetProviderPermissions.json" } } - }, - "get": { + } + }, + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { + "post": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_GetAtScope", - "description": "Gets a deployment.", + "operationId": "Providers_Register", + "description": "Registers a subscription with a resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider to register." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "properties", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ProviderRegistrationRequest" + }, + "description": "The third party consent for S2S." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/Provider" } }, "default": { @@ -219,28 +228,34 @@ } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + "/subscriptions/{subscriptionId}/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_CancelAtScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Providers_List", + "description": "Gets all resource providers for a subscription.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of resource providers.", + "schema": { + "$ref": "#/definitions/ProviderListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -248,32 +263,31 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get providers.": { + "$ref": "./examples/GetProviders.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/providers": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ValidateAtScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Providers_ListAtTenantScope", + "description": "Gets all resource providers for the tenant.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -281,18 +295,9 @@ ], "responses": { "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "The template deployment validation detected failures.", + "description": "OK - Returns an array of resource providers.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ProviderListResult" } }, "default": { @@ -302,36 +307,45 @@ } } }, - "x-ms-examples": { - "Validates a template at scope": { - "$ref": "./examples/PostDeploymentValidateOnScope.json" - } + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ExportTemplateAtScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Providers_Get", + "description": "Gets the specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns information about the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/Provider" } }, "default": { @@ -340,44 +354,48 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get provider.": { + "$ref": "./examples/GetProvider.json" + } } } }, - "/{scope}/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_ListAtScope", - "description": "Get all the deployments at the given scope.", + "operationId": "ProviderResourceTypes_List", + "description": "List the resource types for a specified resource provider.", "parameters": [ { - "$ref": "#/parameters/ScopeParameter" - }, - { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns resource types information for the resource provider.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ProviderResourceTypeListResult" } }, "default": { @@ -387,34 +405,113 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-examples": { + "Get provider resource types.": { + "$ref": "./examples/GetProviderResourceTypes.json" + } + } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/providers/{resourceProviderNamespace}": { + "get": { "tags": [ - "Deployments" + "Providers" ], - "operationId": "Deployments_DeleteAtTenantScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "x-ms-examples": { + "Get a resource provider at tenant scope": { + "$ref": "./examples/GetNamedProviderAtTenant.json" + } + }, + "operationId": "Providers_GetAtTenantScope", + "description": "Gets the specified resource provider at the tenant level.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." }, { - "$ref": "#/parameters/ApiVersionParameter" - } + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "200": { + "description": "OK - Returns information about the resource provider.", + "schema": { + "$ref": "#/definitions/Provider" + } }, - "204": { - "description": "No Content" + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { + "get": { + "tags": [ + "ResourceGroups" + ], + "operationId": "Resources_ListByResourceGroup", + "description": "Get all the resources for a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group with the resources to get.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of results to return. If null is passed, returns all resources." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of resources", + "schema": { + "$ref": "#/definitions/ResourceListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -423,20 +520,35 @@ } } }, - "x-ms-long-running-operation": true - }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { "head": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CheckExistenceAtTenantScope", - "description": "Checks whether the deployment exists.", + "operationId": "ResourceGroups_CheckExistence", + "description": "Checks whether a resource group exists.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -456,39 +568,53 @@ }, "put": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CreateOrUpdateAtTenantScope", - "summary": "Deploys resources at tenant scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "x-ms-examples": { + "Create or update a resource group": { + "$ref": "./examples/CreateResourceGroup.json" + } + }, + "operationId": "ResourceGroups_CreateOrUpdate", + "description": "Creates or updates a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroup" }, - "description": "Additional parameters supplied to the operation." + "description": "Parameters supplied to the create or update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the new resource group.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -497,33 +623,59 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at tenant scope.": { - "$ref": "./examples/PutDeploymentAtTenant.json" - } } }, - "get": { + "delete": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_GetAtTenantScope", - "description": "Gets a deployment.", + "operationId": "ResourceGroups_Delete", + "summary": "Deletes a resource group.", + "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "forceDeletionTypes", + "in": "query", + "required": false, + "type": "string", + "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], + "x-ms-examples": { + "Force delete all the Virtual Machines in a resource group": { + "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" + }, + "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { + "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" + } + }, "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" + "description": "OK" + }, + "202": { + "description": "Accepted", + "headers": { + "location": { + "type": "string", + "description": "URL to get status of this long-running operation." + } } }, "default": { @@ -532,28 +684,39 @@ "$ref": "#/definitions/CloudError" } } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_CancelAtTenantScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "ResourceGroups_Get", + "description": "Gets a resource group.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource group.", + "schema": { + "$ref": "#/definitions/ResourceGroup" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -562,47 +725,46 @@ } } } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "patch": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ValidateAtTenantScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "ResourceGroups_Update", + "summary": "Updates a resource group.", + "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group to update. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeployment" + "$ref": "#/definitions/ResourceGroupPatchable" }, - "description": "Parameters to validate." + "description": "Parameters supplied to update a resource group." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "The template deployment validation detected failures.", + "description": "OK - Returns information about the resource group.", "schema": { - "$ref": "#/definitions/DeploymentValidateResult" + "$ref": "#/definitions/ResourceGroup" } }, "default": { @@ -611,121 +773,84 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-examples": { - "Validates a template at tenant scope": { - "$ref": "./examples/PostDeploymentValidateOnTenant.json" - } } } }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { "post": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_WhatIfAtTenantScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the tenant group.", + "operationId": "ResourceGroups_ExportTemplate", + "description": "Captures the specified resource group as a template.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/ExportTemplateRequest" }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "description": "Parameters for exporting the template." } ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnTenant.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplateAtTenantScope", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" + "Export a resource group": { + "$ref": "./examples/ExportResourceGroup.json" }, - { - "$ref": "#/parameters/ApiVersionParameter" + "Export a resource group with filtering": { + "$ref": "./examples/ExportResourceGroupWithFiltering.json" + }, + "Export a resource group as Bicep": { + "$ref": "./examples/ExportResourceGroupAsBicep.json" } - ], + }, "responses": { "200": { - "description": "OK - Returns the template.", + "description": "OK - Returns the result of the export.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/ResourceGroupExportResult" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" } } }, - "/providers/Microsoft.Resources/deployments/": { + "/subscriptions/{subscriptionId}/resourcegroups": { "get": { "tags": [ - "Deployments" + "ResourceGroups" ], - "operationId": "Deployments_ListAtTenantScope", - "description": "Get all the deployments at the tenant scope.", + "operationId": "ResourceGroups_List", + "description": "Gets all the resource groups for a subscription.", "parameters": [ { "name": "$filter", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" }, { "name": "$top", @@ -733,17 +858,20 @@ "required": false, "type": "integer", "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The number of results to return. If null is passed, returns all resource groups." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns an array of resource groups.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/ResourceGroupListResult" } }, "default": { @@ -756,31 +884,47 @@ "x-ms-pageable": { "nextLinkName": "nextLink" }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + "x-ms-odata": "#/definitions/ResourceGroupFilter" } }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtManagementGroupScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_MoveResources", + "summary": "Moves resources from one resource group to another resource group.", + "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be moved.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." + "description": "Accepted" }, "204": { "description": "No Content" @@ -793,77 +937,102 @@ } }, "x-ms-long-running-operation": true - }, - "head": { + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { + "post": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtManagementGroupScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_ValidateMoveResources", + "summary": "Validates whether resources can be moved from one resource group to another resource group.", + "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "sourceResourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ResourcesMoveInfo" + }, + "description": "Parameters for moving resources." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { + "202": { + "description": "Accepted" + }, "204": { "description": "No Content" }, - "404": { - "description": "Not Found" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - }, - "put": { + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resources": { + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdateAtManagementGroupScope", - "summary": "Deploys resources at management group scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_List", + "description": "Get all the resources in a subscription.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Additional parameters supplied to the operation." + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The number of recommendations per page if a paged version of this API is being used." }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } - }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns an array of resources.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ResourceListResult" } }, "default": { @@ -873,69 +1042,79 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Create deployment at management group scope.": { - "$ref": "./examples/PutDeploymentAtManagementGroup.json" - } - } - }, - "get": { + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/GenericResourceFilter" + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { + "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtManagementGroupScope", - "description": "Gets a deployment.", + "operationId": "Resources_CheckExistence", + "description": "Checks whether a resource exists.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to check. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider of the resource to check." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CancelAtManagementGroupScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to check whether it exists." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "204": { "description": "No Content" }, + "404": { + "description": "Not Found" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -943,51 +1122,75 @@ } } } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ValidateAtManagementGroupScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Resources_Delete", + "description": "Deletes a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "name": "parameters", - "in": "body", + "name": "parentResourcePath", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/ScopedDeployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to delete." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "description": "OK" }, "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + "description": "Accepted" }, - "400": { - "description": "The template deployment validation detected failures.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "204": { + "description": "No Content" }, "default": { "description": "Error response describing why the operation failed.", @@ -996,60 +1199,92 @@ } } }, - "x-ms-examples": { - "Validates a template at management group scope": { - "$ref": "./examples/PostDeploymentValidateOnManagementGroup.json" - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { + "x-ms-long-running-operation": true + }, + "put": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_WhatIfAtManagementGroupScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the management group.", + "operationId": "Resources_CreateOrUpdate", + "description": "Creates a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to create.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to create." }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/ScopedDeploymentWhatIf" + "$ref": "#/definitions/GenericResource" }, - "description": "Parameters to validate." + "description": "Parameters for creating or updating the resource." }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns What-If operation status", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/WhatIfOperationResult" + "$ref": "#/definitions/GenericResource" } }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } + "201": { + "description": "Created - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -1057,88 +1292,86 @@ } } }, - "x-ms-examples": { - "Predict template changes at management group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnManagementGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_ExportTemplateAtManagementGroupScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Resources_Update", + "description": "Updates a resource.", "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group for the resource. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." }, { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListAtManagementGroupScope", - "description": "Get all the deployments for a management group.", - "parameters": [ { - "$ref": "#/parameters/GroupIdParameter" + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource to update.", + "x-ms-skip-url-encoding": true }, { - "name": "$filter", - "in": "query", - "required": false, + "name": "resourceName", + "in": "path", + "required": true, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." + "description": "The name of the resource to update." }, { - "name": "$top", + "name": "api-version", "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Parameters for updating the resource." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentListResult" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -1146,37 +1379,73 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_DeleteAtSubscriptionScope", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Resources_Get", + "description": "Gets a resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing the resource to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 }, { - "$ref": "#/parameters/SubscriptionIdParameter" - } + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "parentResourcePath", + "in": "path", + "required": true, + "type": "string", + "description": "The parent resource identity.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceType", + "in": "path", + "required": true, + "type": "string", + "description": "The resource type of the resource.", + "x-ms-skip-url-encoding": true + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource to get." + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -1184,24 +1453,32 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-long-running-operation": true - }, + } + } + }, + "/{resourceId}": { "head": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CheckExistenceAtSubscriptionScope", - "description": "Checks whether the deployment exists.", + "operationId": "Resources_CheckExistenceById", + "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { @@ -1219,46 +1496,98 @@ } } }, - "put": { + "delete": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CreateOrUpdateAtSubscriptionScope", - "summary": "Deploys resources at subscription scope.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Resources_DeleteById", + "description": "Deletes a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "name": "parameters", - "in": "body", + "name": "api-version", + "in": "query", "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "put": { + "tags": [ + "Resources" + ], + "operationId": "Resources_CreateOrUpdateById", + "description": "Create a resource by ID.", + "parameters": [ + { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Create or update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/GenericResource" } }, "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", + "description": "Created - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -1266,68 +1595,90 @@ } } }, - "x-ms-examples": { - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentSubscriptionTemplateSpecsWithId.json" - } - }, "x-ms-long-running-operation": true }, - "get": { + "patch": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_GetAtSubscriptionScope", - "description": "Gets a deployment.", + "operationId": "Resources_UpdateById", + "description": "Updates a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GenericResource" + }, + "description": "Update resource parameters." } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "OK - Returns information about the resource.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/GenericResource" } }, + "202": { + "description": "Accepted" + }, "default": { "description": "Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/CloudError" } } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "x-ms-long-running-operation": true + }, + "get": { "tags": [ - "Deployments" + "Resources" ], - "operationId": "Deployments_CancelAtSubscriptionScope", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resources partially deployed.", + "operationId": "Resources_GetById", + "description": "Gets a resource by ID.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", + "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-api-version": false } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns information about the resource.", + "schema": { + "$ref": "#/definitions/GenericResource" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -1338,26 +1689,28 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { + "delete": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_ValidateAtSubscriptionScope", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", + "operationId": "Tags_DeleteValue", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "parameters", - "in": "body", + "name": "tagValue", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." + "type": "string", + "description": "The value of the tag to delete." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1368,19 +1721,10 @@ ], "responses": { "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + "description": "Predefined tag value successfully deleted." }, - "400": { - "description": "The template deployment validation detected failures.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } + "204": { + "description": "Predefined tag value did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -1388,33 +1732,29 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-examples": { - "Validates a template at subscription scope": { - "$ref": "./examples/PostDeploymentValidateOnSubscription.json" - } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { + }, + "put": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_WhatIfAtSubscriptionScope", - "description": "Returns changes that will be made by the deployment if executed at the scope of the subscription.", + "operationId": "Tags_CreateOrUpdateValue", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag." }, { - "name": "parameters", - "in": "body", + "name": "tagValue", + "in": "path", "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to What If." + "type": "string", + "description": "The value of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1425,22 +1765,15 @@ ], "responses": { "200": { - "description": "OK - Returns What-If operation status", + "description": "Predefined tag value already exists. Returns information about the predefined tag value.", "schema": { - "$ref": "#/definitions/WhatIfOperationResult" + "$ref": "#/definitions/TagValue" } }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } + "201": { + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", + "schema": { + "$ref": "#/definitions/TagValue" } }, "default": { @@ -1449,28 +1782,24 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-examples": { - "Predict template changes at subscription scope": { - "$ref": "./examples/PostDeploymentWhatIfOnSubscription.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { + "/subscriptions/{subscriptionId}/tagNames/{tagName}": { + "put": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_ExportTemplateAtSubscriptionScope", - "description": "Exports the template used for specified deployment.", + "operationId": "Tags_CreateOrUpdate", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", "parameters": [ { - "$ref": "#/parameters/DeploymentNameParameter" + "name": "tagName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tag to create." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1481,9 +1810,15 @@ ], "responses": { "200": { - "description": "OK - Returns the template.", + "description": "Predefined tag name already exists. Returns information about the predefined tag name.", + "schema": { + "$ref": "#/definitions/TagDetails" + } + }, + "201": { + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", "schema": { - "$ref": "#/definitions/DeploymentExportResult" + "$ref": "#/definitions/TagDetails" } }, "default": { @@ -1493,30 +1828,21 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/": { - "get": { + }, + "delete": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_ListAtSubscriptionScope", - "description": "Get all the deployments for a subscription.", + "operationId": "Tags_Delete", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", "parameters": [ { - "name": "$filter", - "in": "query", - "required": false, + "name": "tagName", + "in": "path", + "required": true, "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." + "description": "The name of the tag." }, { "$ref": "#/parameters/ApiVersionParameter" @@ -1527,10 +1853,10 @@ ], "responses": { "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } + "description": "Predefined tag name successfully deleted." + }, + "204": { + "description": "Predefined tag name did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -1538,35 +1864,18 @@ "$ref": "#/definitions/CloudError" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" + } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": { - "delete": { + "/subscriptions/{subscriptionId}/tagNames": { + "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Delete", - "summary": "Deletes a deployment from the deployment history.", - "description": "A template deployment that is currently running cannot be deleted. Deleting a template deployment removes the associated deployment operations. Deleting a template deployment does not affect the state of the resource group. This is an asynchronous operation that returns a status of 202 until the template deployment is successfully deleted. The Location response header contains the URI that is used to obtain the status of the process. While the process is running, a call to the URI in the Location header returns a status of 202. When the process finishes, the URI in the Location header returns a status of 204 on success. If the asynchronous request failed, the URI in the Location header returns an error-level status code.", + "operationId": "Tags_List", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -1575,11 +1884,11 @@ } ], "responses": { - "202": { - "description": "Accepted - Returns this status until the asynchronous operation has completed." - }, - "204": { - "description": "No Content" + "200": { + "description": "OK - Returns an array of tag names and values.", + "schema": { + "$ref": "#/definitions/TagsListResult" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -1588,41 +1897,50 @@ } } }, - "x-ms-long-running-operation": true - }, - "head": { + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{scope}/providers/Microsoft.Resources/tags/default": { + "put": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CheckExistence", - "description": "Checks whether the deployment exists.", + "operationId": "Tags_CreateOrUpdateAtScope", + "summary": "Creates or updates the entire set of tags on a resource or subscription.", + "description": "This operation allows adding or replacing the entire set of tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployment to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ScopeParameter" }, { "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } } ], "responses": { - "204": { - "description": "No Content" + "200": { + "description": "Tags updated successfully. Returns tags from the specified object.", + "schema": { + "$ref": "#/definitions/TagsResource" + } }, - "404": { - "description": "Not Found" + "202": { + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + } + }, + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -1630,57 +1948,55 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update tags on a resource": { + "$ref": "./examples/PutTagsResource.json" + }, + "Update tags on a subscription": { + "$ref": "./examples/PutTagsSubscription.json" + } } }, - "put": { + "patch": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_CreateOrUpdate", - "summary": "Deploys resources to a resource group.", - "description": "You can provide the template and parameters directly in the request or link to JSON files.", + "operationId": "Tags_UpdateAtScope", + "summary": "Selectively updates the set of tags on a resource or subscription.", + "description": "This operation allows replacing, merging or selectively deleting tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags at the end of the operation. The 'replace' option replaces the entire set of existing tags with a new set. The 'merge' option allows adding tags with new names and updating the values of tags with existing names. The 'delete' option allows selectively deleting tags based on given names or name/value pairs.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to deploy the resources to. The name is case insensitive. The resource group must already exist.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 + "$ref": "#/parameters/ScopeParameter" }, { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ApiVersionParameter" }, { "name": "parameters", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Additional parameters supplied to the operation." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "#/definitions/TagsPatchResource" + } } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "Tags updated successfully. Returns tags from the specified object.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/TagsResource" } }, - "201": { - "description": "Created - Returns information about the deployment, including provisioning status.", - "schema": { - "$ref": "#/definitions/DeploymentExtended" - } + "202": { + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." + } + }, + "description": "Accepted" }, "default": { "description": "Error response describing why the operation failed.", @@ -1689,57 +2005,35 @@ } } }, + "x-ms-long-running-operation": true, "x-ms-examples": { - "Create a deployment that will redeploy the last successful deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json" - }, - "Create a deployment that will redeploy another deployment on failure": { - "$ref": "./examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json" - }, - "Create a deployment that will deploy a templateSpec with the given resourceId": { - "$ref": "./examples/PutDeploymentResourceGroupTemplateSpecsWithId.json" - }, - "Create a deployment that will deploy a template with a uri and queryString": { - "$ref": "./examples/PutDeploymentResourceGroup.json" + "Update tags on a resource": { + "$ref": "./examples/PatchTagsResource.json" }, - "Create deployment using external inputs": { - "$ref": "./examples/PutDeploymentWithExternalInputs.json" + "Update tags on a subscription": { + "$ref": "./examples/PatchTagsSubscription.json" } - }, - "x-ms-long-running-operation": true + } }, "get": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Get", - "description": "Gets a deployment.", + "operationId": "Tags_GetAtScope", + "summary": "Gets the entire set of tags on a resource or subscription.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" + "$ref": "#/parameters/ScopeParameter" }, { "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "OK - Returns information about the deployment, including provisioning status.", + "description": "Returns tags from the specified object.", "schema": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/TagsResource" } }, "default": { @@ -1748,3997 +2042,463 @@ "$ref": "#/definitions/CloudError" } } + }, + "x-ms-examples": { + "Get tags on a resource": { + "$ref": "./examples/GetTagsResource.json" + }, + "Get tags on a subscription": { + "$ref": "./examples/GetTagsSubscription.json" + } } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/cancel": { - "post": { + }, + "delete": { "tags": [ - "Deployments" + "Tags" ], - "operationId": "Deployments_Cancel", - "summary": "Cancels a currently running template deployment.", - "description": "You can cancel a deployment only if the provisioningState is Accepted or Running. After the deployment is canceled, the provisioningState is set to Canceled. Canceling a template deployment stops the currently running template deployment and leaves the resource group partially deployed.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/validate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_Validate", - "x-ms-long-running-operation": true, - "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Deployment" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "The template deployment validation succeeded. Please inspect 'warnings' property since some resources might have been skipped from validation.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "202": { - "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." - }, - "400": { - "description": "The template deployment validation detected failures.", - "schema": { - "$ref": "#/definitions/DeploymentValidateResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Validates a template at resource group scope": { - "$ref": "./examples/PostDeploymentValidateOnResourceGroup.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/whatIf": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_WhatIf", - "description": "Returns changes that will be made by the deployment if executed at the scope of the resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group the template will be deployed to. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DeploymentWhatIf" - }, - "description": "Parameters to validate." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns What-If operation status", - "schema": { - "$ref": "#/definitions/WhatIfOperationResult" - } - }, - "202": { - "description": "Accepted - Returns URL in Location header to query for long-running operation status.", - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - }, - "Retry-After": { - "type": "string", - "description": "Number of seconds to wait before polling for status." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Predict template changes at resource group scope": { - "$ref": "./examples/PostDeploymentWhatIfOnResourceGroup.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}/exportTemplate": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ExportTemplate", - "description": "Exports the template used for specified deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns the template.", - "schema": { - "$ref": "#/definitions/DeploymentExportResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/": { - "get": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_ListByResourceGroup", - "description": "Get all the deployments for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group with the deployments to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation. For example, you can use $filter=provisioningState eq '{state}'." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to get. If null is passed, returns all deployments." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of deployments.", - "schema": { - "$ref": "#/definitions/DeploymentListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/DeploymentExtendedFilter" - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/unregister": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Unregister", - "description": "Unregisters a subscription from a resource provider.", + "operationId": "Tags_DeleteAtScope", + "summary": "Deletes the entire set of tags on a resource or subscription.", "parameters": [ { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to unregister." - }, - { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/ScopeParameter" }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_RegisterAtManagementGroupScope", - "description": "Registers a management group with a resource provider. Use this operation to register a resource provider with resource types that can be deployed at the management group scope. It does not recursively register subscriptions within the management group. Instead, you must register subscriptions individually.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/GroupIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/providerPermissions": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ProviderPermissions", - "description": "Get the provider permissions.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information on the provider permissions.", - "schema": { - "$ref": "#/definitions/ProviderPermissionListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderPermissions.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/register": { - "post": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Register", - "description": "Registers a subscription with a resource provider.", - "parameters": [ - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider to register." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "name": "properties", - "in": "body", - "required": false, - "schema": { - "$ref": "#/definitions/ProviderRegistrationRequest" - }, - "description": "The third party consent for S2S." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_List", - "description": "Gets all resource providers for a subscription.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Get providers.": { - "$ref": "./examples/GetProviders.json" - } - } - } - }, - "/providers": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_ListAtTenantScope", - "description": "Gets all resource providers for the tenant.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The properties to include in the results. For example, use &$expand=metadata in the query string to retrieve resource provider metadata. To include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource providers.", - "schema": { - "$ref": "#/definitions/ProviderListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "Providers_Get", - "description": "Gets the specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider.": { - "$ref": "./examples/GetProvider.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/{resourceProviderNamespace}/resourceTypes": { - "get": { - "tags": [ - "Providers" - ], - "operationId": "ProviderResourceTypes_List", - "description": "List the resource types for a specified resource provider.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns resource types information for the resource provider.", - "schema": { - "$ref": "#/definitions/ProviderResourceTypeListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get provider resource types.": { - "$ref": "./examples/GetProviderResourceTypes.json" - } - } - } - }, - "/providers/{resourceProviderNamespace}": { - "get": { - "tags": [ - "Providers" - ], - "x-ms-examples": { - "Get a resource provider at tenant scope": { - "$ref": "./examples/GetNamedProviderAtTenant.json" - } - }, - "operationId": "Providers_GetAtTenantScope", - "description": "Gets the specified resource provider at the tenant level.", - "parameters": [ - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "The $expand query parameter. For example, to include property aliases in response, use $expand=resourceTypes/aliases." - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource provider.", - "schema": { - "$ref": "#/definitions/Provider" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/resources": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "Resources_ListByResourceGroup", - "description": "Get all the resources for a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The resource group with the resources to get.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

The properties you can use for eq (equals) or ne (not equals) are: location, resourceType, name, resourceGroup, identity, identity/principalId, plan, plan/publisher, plan/product, plan/name, plan/version, and plan/promotionCode.

For example, to filter by a resource type, use: $filter=resourceType eq 'Microsoft.Network/virtualNetworks'

You can use substringof(value, property) in the filter. The properties you can use for substring are: name and resourceGroup.

For example, to get all resources with 'demo' anywhere in the name, use: $filter=substringof('demo', name)

You can link more than one substringof together by adding and/or operators.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'. When you filter by a tag name and value, the tags for each resource are not returned in the results.

You can use some properties together when filtering. The combinations you can use are: substringof and/or resourceType, plan and plan/publisher and plan/name, identity and identity/principalId." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}": { - "head": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_CheckExistence", - "description": "Checks whether a resource group exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "ResourceGroups" - ], - "x-ms-examples": { - "Create or update a resource group": { - "$ref": "./examples/CreateResourceGroup.json" - } - }, - "operationId": "ResourceGroups_CreateOrUpdate", - "description": "Creates or updates a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to create or update. Can include alphanumeric, underscore, parentheses, hyphen, period (except at end), and Unicode characters that match the allowed characters.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroup" - }, - "description": "Parameters supplied to the create or update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "201": { - "description": "Created - Returns information about the new resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Delete", - "summary": "Deletes a resource group.", - "description": "When you delete a resource group, all of its resources are also deleted. Deleting a resource group deletes all of its template deployments and currently stored operations.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "forceDeletionTypes", - "in": "query", - "required": false, - "type": "string", - "description": "The resource types you want to force delete. Currently, only the following is supported: forceDeletionTypes=Microsoft.Compute/virtualMachines,Microsoft.Compute/virtualMachineScaleSets" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "x-ms-examples": { - "Force delete all the Virtual Machines in a resource group": { - "$ref": "./examples/ForceDeleteVMsInResourceGroup.json" - }, - "Force delete all the Virtual Machines and Virtual Machine Scale Sets in a resource group": { - "$ref": "./examples/ForceDeleteVMsAndVMSSInResourceGroup.json" - } - }, - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted", - "headers": { - "location": { - "type": "string", - "description": "URL to get status of this long-running operation." - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Get", - "description": "Gets a resource group.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "patch": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_Update", - "summary": "Updates a resource group.", - "description": "Resource groups can be updated through a simple PATCH operation to a group address. The format of the request is the same as that for creating a resource group. If a field is unspecified, the current value is retained.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group to update. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourceGroupPatchable" - }, - "description": "Parameters supplied to update a resource group." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource group.", - "schema": { - "$ref": "#/definitions/ResourceGroup" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/exportTemplate": { - "post": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_ExportTemplate", - "description": "Captures the specified resource group as a template.", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ExportTemplateRequest" - }, - "description": "Parameters for exporting the template." - } - ], - "x-ms-examples": { - "Export a resource group": { - "$ref": "./examples/ExportResourceGroup.json" - }, - "Export a resource group with filtering": { - "$ref": "./examples/ExportResourceGroupWithFiltering.json" - }, - "Export a resource group as Bicep": { - "$ref": "./examples/ExportResourceGroupAsBicep.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the result of the export.", - "schema": { - "$ref": "#/definitions/ResourceGroupExportResult" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups": { - "get": { - "tags": [ - "ResourceGroups" - ], - "operationId": "ResourceGroups_List", - "description": "Gets all the resource groups for a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

You can filter by tag names and values. For example, to filter for a tag name and value, use $filter=tagName eq 'tag1' and tagValue eq 'Value1'" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return. If null is passed, returns all resource groups." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resource groups.", - "schema": { - "$ref": "#/definitions/ResourceGroupListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/ResourceGroupFilter" - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/moveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_MoveResources", - "summary": "Moves resources from one resource group to another resource group.", - "description": "The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. When moving resources, both the source group and the target group are locked for the duration of the operation. Write and delete operations are blocked on the groups until the move completes. ", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be moved.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{sourceResourceGroupName}/validateMoveResources": { - "post": { - "tags": [ - "Resources" - ], - "operationId": "Resources_ValidateMoveResources", - "summary": "Validates whether resources can be moved from one resource group to another resource group.", - "description": "This operation checks whether the specified resources can be moved to the target. The resources to be moved must be in the same source resource group in the source subscription being used. The target resource group may be in a different subscription. If validation succeeds, it returns HTTP response code 204 (no content). If validation fails, it returns HTTP response code 409 (Conflict) with an error message. Retrieve the URL in the Location header value to check the result of the long-running operation.", - "parameters": [ - { - "name": "sourceResourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group from the source subscription containing the resources to be validated for move.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/ResourcesMoveInfo" - }, - "description": "Parameters for moving resources." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resources": { - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_List", - "description": "Get all the resources in a subscription.", - "parameters": [ - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation.

Filter comparison operators include `eq` (equals) and `ne` (not equals) and may be used with the following properties: `location`, `resourceType`, `name`, `resourceGroup`, `identity`, `identity/principalId`, `plan`, `plan/publisher`, `plan/product`, `plan/name`, `plan/version`, and `plan/promotionCode`.

For example, to filter by a resource type, use `$filter=resourceType eq 'Microsoft.Network/virtualNetworks'`


`substringof(value, property)` can be used to filter for substrings of the following currently-supported properties: `name` and `resourceGroup`

For example, to get all resources with 'demo' anywhere in the resource name, use `$filter=substringof('demo', name)`

Multiple substring operations can also be combined using `and`/`or` operators.

Note that any truncated number of results queried via `$top` may also not be compatible when using a filter.


Resources can be filtered by tag names and values. For example, to filter for a tag name and value, use `$filter=tagName eq 'tag1' and tagValue eq 'Value1'`. Note that when resources are filtered by tag name and value, the original tags for each resource will not be returned in the results. Any list of additional properties queried via `$expand` may also not be compatible when filtering by tag names/values.

For tag names only, resources can be filtered by prefix using the following syntax: `$filter=startswith(tagName, 'depart')`. This query will return all resources with a tag name prefixed by the phrase `depart` (i.e.`department`, `departureDate`, `departureTime`, etc.)


Note that some properties can be combined when filtering resources, which include the following: `substringof() and/or resourceType`, `plan and plan/publisher and plan/name`, and `identity and identity/principalId`." - }, - { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of recommendations per page if a paged version of this API is being used." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of resources.", - "schema": { - "$ref": "#/definitions/ResourceListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-odata": "#/definitions/GenericResourceFilter" - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{parentResourcePath}/{resourceType}/{resourceName}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistence", - "description": "Checks whether a resource exists.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to check. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The resource provider of the resource to check." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to check whether it exists." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Delete", - "description": "Deletes a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group that contains the resource to delete. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to delete." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdate", - "description": "Creates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to create.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to create." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for creating or updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Update", - "description": "Updates a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group for the resource. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource to update.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to update." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Parameters for updating the resource." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_Get", - "description": "Gets a resource.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group containing the resource to get. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "name": "resourceProviderNamespace", - "in": "path", - "required": true, - "type": "string", - "description": "The namespace of the resource provider." - }, - { - "name": "parentResourcePath", - "in": "path", - "required": true, - "type": "string", - "description": "The parent resource identity.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceType", - "in": "path", - "required": true, - "type": "string", - "description": "The resource type of the resource.", - "x-ms-skip-url-encoding": true - }, - { - "name": "resourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource to get." - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{resourceId}": { - "head": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CheckExistenceById", - "description": "Checks by ID whether a resource exists. This API currently works only for a limited set of Resource providers. In the event that a Resource provider does not implement this API, ARM will respond with a 405. The alternative then is to use the GET API to check for the existence of the resource.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "204": { - "description": "No Content" - }, - "404": { - "description": "Not Found" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Resources" - ], - "operationId": "Resources_DeleteById", - "description": "Deletes a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "No Content" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "put": { - "tags": [ - "Resources" - ], - "operationId": "Resources_CreateOrUpdateById", - "description": "Create a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Create or update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "201": { - "description": "Created - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "patch": { - "tags": [ - "Resources" - ], - "operationId": "Resources_UpdateById", - "description": "Updates a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/GenericResource" - }, - "description": "Update resource parameters." - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "202": { - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true - }, - "get": { - "tags": [ - "Resources" - ], - "operationId": "Resources_GetById", - "description": "Gets a resource by ID.", - "parameters": [ - { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The fully qualified ID of the resource, including the resource name and resource type. Use the format, /subscriptions/{guid}/resourceGroups/{resource-group-name}/{resource-provider-namespace}/{resource-type}/{resource-name}", - "x-ms-skip-url-encoding": true - }, - { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the operation.", - "x-ms-api-version": false - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the resource.", - "schema": { - "$ref": "#/definitions/GenericResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}/tagValues/{tagValue}": { - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteValue", - "summary": "Deletes a predefined tag value for a predefined tag name.", - "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "name": "tagValue", - "in": "path", - "required": true, - "type": "string", - "description": "The value of the tag to delete." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value successfully deleted." - }, - "204": { - "description": "Predefined tag value did not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdateValue", - "summary": "Creates a predefined value for a predefined tag name.", - "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "name": "tagValue", - "in": "path", - "required": true, - "type": "string", - "description": "The value of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag value already exists. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "201": { - "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", - "schema": { - "$ref": "#/definitions/TagValue" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames/{tagName}": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a predefined tag name.", - "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag to create." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name already exists. Returns information about the predefined tag name.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - }, - "201": { - "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", - "schema": { - "$ref": "#/definitions/TagDetails" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_Delete", - "summary": "Deletes a predefined tag name.", - "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", - "parameters": [ - { - "name": "tagName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the tag." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "Predefined tag name successfully deleted." - }, - "204": { - "description": "Predefined tag name did not exist." - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/tagNames": { - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_List", - "summary": "Gets a summary of tag usage under the subscription.", - "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns an array of tag names and values.", - "schema": { - "$ref": "#/definitions/TagsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{scope}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtTenantScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtTenantScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtManagementGroupScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/providers/Microsoft.Management/managementGroups/{groupId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtManagementGroupScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/GroupIdParameter" - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_GetAtSubscriptionScope", - "description": "Gets a deployments operation.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Resources/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_ListAtSubscriptionScope", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations/{operationId}": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_Get", - "description": "Gets a deployments operation.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "operationId", - "in": "path", - "required": true, - "type": "string", - "description": "The ID of the operation to get." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Returns information about the deployment operation.", - "schema": { - "$ref": "#/definitions/DeploymentOperation" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/deployments/{deploymentName}/operations": { - "get": { - "tags": [ - "DeploymentOperations" - ], - "operationId": "DeploymentOperations_List", - "description": "Gets all deployments operations for a deployment.", - "parameters": [ - { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90 - }, - { - "$ref": "#/parameters/DeploymentNameParameter" - }, - { - "name": "$top", - "in": "query", - "required": false, - "type": "integer", - "format": "int32", - "description": "The number of results to return." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK - Return an array of deployment operations.", - "schema": { - "$ref": "#/definitions/DeploymentOperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/providers/Microsoft.Resources/calculateTemplateHash": { - "post": { - "tags": [ - "Deployments" - ], - "operationId": "Deployments_CalculateTemplateHash", - "description": "Calculate the hash of the given template.", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "template", - "in": "body", - "required": true, - "schema": { - "type": "object" - }, - "description": "The template provided to calculate hash." - } - ], - "x-ms-examples": { - "Calculate template hash": { - "$ref": "./examples/CalculateTemplateHash.json" - } - }, - "responses": { - "200": { - "description": "OK - Returns the hash.", - "schema": { - "$ref": "#/definitions/TemplateHashResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/{scope}/providers/Microsoft.Resources/tags/default": { - "put": { - "tags": [ - "Tags" - ], - "operationId": "Tags_CreateOrUpdateAtScope", - "summary": "Creates or updates the entire set of tags on a resource or subscription.", - "description": "This operation allows adding or replacing the entire set of tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/TagsResource" - } - } - ], - "responses": { - "200": { - "description": "Tags updated successfully. Returns tags from the specified object.", - "schema": { - "$ref": "#/definitions/TagsResource" - } - }, - "202": { - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - } - }, - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Update tags on a resource": { - "$ref": "./examples/PutTagsResource.json" - }, - "Update tags on a subscription": { - "$ref": "./examples/PutTagsSubscription.json" - } - } - }, - "patch": { - "tags": [ - "Tags" - ], - "operationId": "Tags_UpdateAtScope", - "summary": "Selectively updates the set of tags on a resource or subscription.", - "description": "This operation allows replacing, merging or selectively deleting tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags at the end of the operation. The 'replace' option replaces the entire set of existing tags with a new set. The 'merge' option allows adding tags with new names and updating the values of tags with existing names. The 'delete' option allows selectively deleting tags based on given names or name/value pairs.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/TagsPatchResource" - } - } - ], - "responses": { - "200": { - "description": "Tags updated successfully. Returns tags from the specified object.", - "schema": { - "$ref": "#/definitions/TagsResource" - } - }, - "202": { - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - } - }, - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Update tags on a resource": { - "$ref": "./examples/PatchTagsResource.json" - }, - "Update tags on a subscription": { - "$ref": "./examples/PatchTagsSubscription.json" - } - } - }, - "get": { - "tags": [ - "Tags" - ], - "operationId": "Tags_GetAtScope", - "summary": "Gets the entire set of tags on a resource or subscription.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Returns tags from the specified object.", - "schema": { - "$ref": "#/definitions/TagsResource" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get tags on a resource": { - "$ref": "./examples/GetTagsResource.json" - }, - "Get tags on a subscription": { - "$ref": "./examples/GetTagsSubscription.json" - } - } - }, - "delete": { - "tags": [ - "Tags" - ], - "operationId": "Tags_DeleteAtScope", - "summary": "Deletes the entire set of tags on a resource or subscription.", - "parameters": [ - { - "$ref": "#/parameters/ScopeParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Tags successfully deleted." - }, - "202": { - "headers": { - "Location": { - "type": "string", - "description": "URL to get status of this long-running operation." - } - }, - "description": "Accepted" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Update tags on a resource": { - "$ref": "./examples/DeleteTagsResource.json" - }, - "Update tags on a subscription": { - "$ref": "./examples/DeleteTagsSubscription.json" - } - } - } - } - }, - "definitions": { - "DeploymentExtendedFilter": { - "properties": { - "provisioningState": { - "type": "string", - "description": "The provisioning state." - } - }, - "description": "Deployment filter." - }, - "GenericResourceFilter": { - "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "tagname": { - "type": "string", - "description": "The tag name." - }, - "tagvalue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource filter." - }, - "ResourceGroupFilter": { - "properties": { - "tagName": { - "type": "string", - "description": "The tag name." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - } - }, - "description": "Resource group filter." - }, - "TemplateLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the template to deploy. Use either the uri or id property, but not both." - }, - "id": { - "type": "string", - "description": "The resource id of a Template Spec. Use either the id or uri property, but not both." - }, - "relativePath": { - "type": "string", - "description": "The relativePath property can be used to deploy a linked template at a location relative to the parent. If the parent template was linked with a TemplateSpec, this will reference an artifact in the TemplateSpec. If the parent was linked with a URI, the child deployment will be a combination of the parent and relativePath URIs" - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - }, - "queryString": { - "type": "string", - "description": "The query string (for example, a SAS token) to be used with the templateLink URI." - } - }, - "description": "Entity representing the reference to the template." - }, - "ParametersLink": { - "properties": { - "uri": { - "type": "string", - "description": "The URI of the parameters file." - }, - "contentVersion": { - "type": "string", - "description": "If included, must match the ContentVersion in the template." - } - }, - "required": [ - "uri" - ], - "description": "Entity representing the reference to the deployment parameters." - }, - "DeploymentProperties": { - "properties": { - "template": { - "type": "object", - "description": "The template content. You use this element when you want to pass the template syntax directly in the request rather than link to an existing template. It can be a JObject or well-formed JSON string. Use either the templateLink property or the template property, but not both." - }, - "templateLink": { - "$ref": "#/definitions/TemplateLink", - "description": "The URI of the template. Use either the templateLink property or the template property, but not both." - }, - "parameters": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/DeploymentParameter" - }, - "description": "Name and value pairs that define the deployment parameters for the template. You use this element when you want to provide the parameter values directly in the request rather than link to an existing parameter file. Use either the parametersLink property or the parameters property, but not both. It can be a JObject or a well formed JSON string." - }, - "externalInputs": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/DeploymentExternalInput" - }, - "x-ms-mutability": [ - "create", - "update" - ], - "description": "External input values, used by external tooling for parameter evaluation." - }, - "externalInputDefinitions": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/DeploymentExternalInputDefinition" - }, - "x-ms-mutability": [ - "create", - "update" - ], - "description": "External input definitions, used by external tooling to define expected external input values." - }, - "parametersLink": { - "$ref": "#/definitions/ParametersLink", - "description": "The URI of parameters file. You use this element to link to an existing parameters file. Use either the parametersLink property or the parameters property, but not both." - }, - "extensionConfigs": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/DeploymentExtensionConfig" - }, - "description": "The configurations to use for deployment extensions. The keys of this object are deployment extension aliases as defined in the deployment template." - }, - "mode": { - "type": "string", - "description": "The mode that is used to deploy resources. This value can be either Incremental or Complete. In Incremental mode, resources are deployed without deleting existing resources that are not included in the template. In Complete mode, resources are deployed and existing resources in the resource group that are not included in the template are deleted. Be careful when using Complete mode as you may unintentionally delete resources.", - "enum": [ - "Incremental", - "Complete" - ], - "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false - } - }, - "debugSetting": { - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "$ref": "#/definitions/OnErrorDeployment", - "description": "The deployment on error behavior." - }, - "expressionEvaluationOptions": { - "$ref": "#/definitions/ExpressionEvaluationOptions", - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template. Only applicable to nested templates. If not specified, default value is outer." - }, - "validationLevel": { - "$ref": "#/definitions/ValidationLevel", - "description": "The validation level of the deployment" - } - }, - "required": [ - "mode" - ], - "description": "Deployment properties." - }, - "DeploymentParameter": { - "type": "object", - "properties": { - "value": { - "description": "Input value to the parameter ." - }, - "reference": { - "$ref": "#/definitions/KeyVaultParameterReference", - "description": "Azure Key Vault parameter reference." - }, - "expression": { - "type": "string", - "x-ms-mutability": [ - "create", - "update" - ], - "description": "Input expression to the parameter." - } - }, - "description": "Deployment parameter for the template." - }, - "DeploymentExternalInput": { - "type": "object", - "properties": { - "value": { - "description": "External input value." - } - }, - "required": [ - "value" - ], - "description": "Deployment external input for parameterization." - }, - "DeploymentExternalInputDefinition": { - "type": "object", - "properties": { - "kind": { - "type": "string", - "description": "The kind of external input." - }, - "config": { - "description": "Configuration for the external input." - } - }, - "required": [ - "kind" - ], - "description": "Deployment external input definition for parameterization." - }, - "KeyVaultParameterReference": { - "type": "object", - "properties": { - "keyVault": { - "$ref": "#/definitions/KeyVaultReference", - "description": "Azure Key Vault reference." - }, - "secretName": { - "type": "string", - "description": "Azure Key Vault secret name." - }, - "secretVersion": { - "type": "string", - "description": "Azure Key Vault secret version." - } - }, - "required": [ - "keyVault", - "secretName" - ], - "description": "Azure Key Vault parameter reference." - }, - "KeyVaultReference": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Azure Key Vault resource id." - } - }, - "required": [ - "id" - ], - "description": "Azure Key Vault reference." - }, - "DebugSetting": { - "properties": { - "detailLevel": { - "type": "string", - "description": "Specifies the type of information to log for debugging. The permitted values are none, requestContent, responseContent, or both requestContent and responseContent separated by a comma. The default is none. When setting this value, carefully consider the type of information you are passing in during deployment. By logging information about the request or response, you could potentially expose sensitive data that is retrieved through the deployment operations." - } - }, - "description": "The debug setting." - }, - "Deployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - }, - "identity": { - "$ref": "#/definitions/DeploymentIdentity", - "description": "The Managed Identity configuration for a deployment." - } - }, - "required": [ - "properties" - ], - "description": "Deployment operation parameters." - }, - "ScopedDeployment": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentProperties", - "description": "The deployment properties." - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment operation parameters." - }, - "DeploymentExportResult": { - "properties": { - "template": { - "type": "object", - "description": "The template content." - } - }, - "description": "The deployment export result. " - }, - "DeploymentWhatIf": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "ScopedDeploymentWhatIf": { - "properties": { - "location": { - "type": "string", - "description": "The location to store the deployment data." - }, - "properties": { - "$ref": "#/definitions/DeploymentWhatIfProperties", - "description": "The deployment properties." - } - }, - "required": [ - "location", - "properties" - ], - "description": "Deployment What-if operation parameters." - }, - "DeploymentWhatIfProperties": { - "properties": { - "whatIfSettings": { - "$ref": "#/definitions/DeploymentWhatIfSettings", - "description": "Optional What-If operation settings." - } - }, - "allOf": [ - { - "$ref": "#/definitions/DeploymentProperties" - } - ], - "description": "Deployment What-if properties." - }, - "DeploymentWhatIfSettings": { - "properties": { - "resultFormat": { - "type": "string", - "description": "The format of the What-If results", - "enum": [ - "ResourceIdOnly", - "FullResourcePayloads" - ], - "x-ms-enum": { - "name": "WhatIfResultFormat", - "modelAsString": false - } - } - }, - "description": "Deployment What-If operation settings." - }, - "CloudError": { - "x-ms-external": true, - "properties": { - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" - } - }, - "description": "An error response for a resource management request." - }, - "ApiProfile": { - "properties": { - "profileVersion": { - "type": "string", - "readOnly": true, - "description": "The profile version." - }, - "apiVersion": { - "type": "string", - "readOnly": true, - "description": "The API version." - } - } - }, - "AliasPathMetadata": { - "properties": { - "type": { - "type": "string", - "readOnly": true, - "enum": [ - "NotSpecified", - "Any", - "String", - "Object", - "Array", - "Integer", - "Number", - "Boolean" - ], - "x-ms-enum": { - "name": "AliasPathTokenType", - "modelAsString": true, - "values": [ - { - "value": "NotSpecified", - "description": "The token type is not specified." - }, - { - "value": "Any", - "description": "The token type can be anything." - }, - { - "value": "String", - "description": "The token type is string." - }, - { - "value": "Object", - "description": "The token type is object." - }, - { - "value": "Array", - "description": "The token type is array." - }, - { - "value": "Integer", - "description": "The token type is integer." - }, - { - "value": "Number", - "description": "The token type is number." - }, - { - "value": "Boolean", - "description": "The token type is boolean." - } - ] - }, - "description": "The type of the token that the alias path is referring to." - }, - "attributes": { - "type": "string", - "readOnly": true, - "enum": [ - "None", - "Modifiable" - ], - "x-ms-enum": { - "name": "AliasPathAttributes", - "modelAsString": true, - "values": [ - { - "value": "None", - "description": "The token that the alias path is referring to has no attributes." - }, - { - "value": "Modifiable", - "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." - } - ] - }, - "description": "The attributes of the token that the alias path is referring to." - } - } - }, - "AliasPath": { - "properties": { - "path": { - "type": "string", - "description": "The path of an alias." - }, - "apiVersions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The API versions." - }, - "pattern": { - "$ref": "#/definitions/AliasPattern", - "description": "The pattern for an alias path." - }, - "metadata": { - "readOnly": true, - "$ref": "#/definitions/AliasPathMetadata", - "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." - } - }, - "description": "The type of the paths for alias." - }, - "AliasPattern": { - "properties": { - "phrase": { - "type": "string", - "description": "The alias pattern phrase." - }, - "variable": { - "type": "string", - "description": "The alias pattern variable." - }, - "type": { - "type": "string", - "enum": [ - "NotSpecified", - "Extract" - ], - "x-ms-enum": { - "name": "AliasPatternType", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "NotSpecified is not allowed." - }, - { - "value": "Extract", - "description": "Extract is the only allowed value." - } - ] - }, - "description": "The type of alias pattern" - } - }, - "description": "The type of the pattern for an alias path." - }, - "Alias": { - "properties": { - "name": { - "type": "string", - "description": "The alias name." - }, - "paths": { - "type": "array", - "items": { - "$ref": "#/definitions/AliasPath" - }, - "x-ms-identifiers": [], - "description": "The paths for an alias." - }, - "type": { - "type": "string", - "description": "The type of the alias.", - "enum": [ - "NotSpecified", - "PlainText", - "Mask" - ], - "x-ms-enum": { - "name": "AliasType", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "Alias type is unknown (same as not providing alias type)." - }, - { - "value": "PlainText", - "description": "Alias value is not secret." - }, - { - "value": "Mask", - "description": "Alias value is secret." + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Tags successfully deleted." + }, + "202": { + "headers": { + "Location": { + "type": "string", + "description": "URL to get status of this long-running operation." } - ] + }, + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "defaultPath": { + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update tags on a resource": { + "$ref": "./examples/DeleteTagsResource.json" + }, + "Update tags on a subscription": { + "$ref": "./examples/DeleteTagsSubscription.json" + } + } + } + } + }, + "definitions": { + "GenericResourceFilter": { + "properties": { + "resourceType": { "type": "string", - "description": "The default path for an alias." + "description": "The resource type." }, - "defaultPattern": { - "$ref": "#/definitions/AliasPattern", - "description": "The default pattern for an alias." + "tagname": { + "type": "string", + "description": "The tag name." }, - "defaultMetadata": { - "readOnly": true, - "$ref": "#/definitions/AliasPathMetadata", - "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" + "tagvalue": { + "type": "string", + "description": "The tag value." } }, - "description": "The alias type. " + "description": "Resource filter." }, - "ProviderExtendedLocation": { + "ResourceGroupFilter": { "properties": { - "location": { + "tagName": { "type": "string", - "description": "The azure location." + "description": "The tag name." }, - "type": { + "tagValue": { "type": "string", - "description": "The extended location type." - }, - "extendedLocations": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The extended locations for the azure location." + "description": "The tag value." } }, - "description": "The provider extended location. " + "description": "Resource group filter." }, - "ProviderResourceType": { + "CloudError": { + "x-ms-external": true, "properties": { - "resourceType": { - "type": "string", - "description": "The resource type." - }, - "locations": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The collection of locations where this resource type can be created." - }, - "locationMappings": { - "type": "array", - "items": { - "$ref": "#/definitions/ProviderExtendedLocation" - }, - "x-ms-identifiers": [ - "location", - "type" - ], - "description": "The location mappings that are supported by this resource type." - }, - "aliases": { - "type": "array", - "items": { - "$ref": "#/definitions/Alias" - }, - "x-ms-identifiers": [ - "name" - ], - "description": "The aliases that are supported by this resource type." - }, - "apiVersions": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The API version." - }, - "defaultApiVersion": { - "type": "string", - "readOnly": true, - "description": "The default API version." - }, - "zoneMappings": { - "type": "array", - "items": { - "$ref": "#/definitions/ZoneMapping" - }, - "x-ms-identifiers": [ - "location" - ] - }, - "apiProfiles": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ApiProfile" - }, - "x-ms-identifiers": [ - "apiVersion", - "profileVersion" - ], - "description": "The API profiles for the resource provider." - }, - "capabilities": { - "type": "string", - "description": "The additional capabilities offered by this resource type." - }, - "properties": { - "type": "object", - "additionalProperties": { - "type": "string", - "description": "The additional properties. " - }, - "description": "The properties." + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } }, - "description": "Resource type managed by the resource provider." + "description": "An error response for a resource management request." }, - "Provider": { + "ApiProfile": { "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The provider ID." - }, - "namespace": { + "profileVersion": { "type": "string", - "description": "The namespace of the resource provider." - }, - "registrationState": { "readOnly": true, - "type": "string", - "description": "The registration state of the resource provider." + "description": "The profile version." }, - "registrationPolicy": { + "apiVersion": { + "type": "string", "readOnly": true, + "description": "The API version." + } + } + }, + "AliasPathMetadata": { + "properties": { + "type": { "type": "string", - "description": "The registration policy of the resource provider." - }, - "resourceTypes": { "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/ProviderResourceType" - }, - "x-ms-identifiers": [ - "resourceType" + "enum": [ + "NotSpecified", + "Any", + "String", + "Object", + "Array", + "Integer", + "Number", + "Boolean" ], - "description": "The collection of provider resource types." + "x-ms-enum": { + "name": "AliasPathTokenType", + "modelAsString": true, + "values": [ + { + "value": "NotSpecified", + "description": "The token type is not specified." + }, + { + "value": "Any", + "description": "The token type can be anything." + }, + { + "value": "String", + "description": "The token type is string." + }, + { + "value": "Object", + "description": "The token type is object." + }, + { + "value": "Array", + "description": "The token type is array." + }, + { + "value": "Integer", + "description": "The token type is integer." + }, + { + "value": "Number", + "description": "The token type is number." + }, + { + "value": "Boolean", + "description": "The token type is boolean." + } + ] + }, + "description": "The type of the token that the alias path is referring to." }, - "providerAuthorizationConsentState": { + "attributes": { "type": "string", + "readOnly": true, "enum": [ - "NotSpecified", - "Required", - "NotRequired", - "Consented" + "None", + "Modifiable" ], - "description": "The provider authorization consent state.", "x-ms-enum": { - "name": "ProviderAuthorizationConsentState", - "modelAsString": true - } + "name": "AliasPathAttributes", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The token that the alias path is referring to has no attributes." + }, + { + "value": "Modifiable", + "description": "The token that the alias path is referring to is modifiable by policies with 'modify' effect." + } + ] + }, + "description": "The attributes of the token that the alias path is referring to." } - }, - "description": "Resource provider information." + } }, - "BasicDependency": { + "AliasPath": { "properties": { - "id": { - "type": "string", - "description": "The ID of the dependency." - }, - "resourceType": { + "path": { "type": "string", - "description": "The dependency resource type." + "description": "The path of an alias." }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." - } - }, - "description": "Deployment dependency information." - }, - "Dependency": { - "properties": { - "dependsOn": { + "apiVersions": { "type": "array", "items": { - "$ref": "#/definitions/BasicDependency" + "type": "string" }, - "description": "The list of dependencies." - }, - "id": { - "type": "string", - "description": "The ID of the dependency." + "description": "The API versions." }, - "resourceType": { - "type": "string", - "description": "The dependency resource type." + "pattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The pattern for an alias path." }, - "resourceName": { - "type": "string", - "description": "The dependency resource name." + "metadata": { + "readOnly": true, + "$ref": "#/definitions/AliasPathMetadata", + "description": "The metadata of the alias path. If missing, fall back to the default metadata of the alias." } }, - "description": "Deployment dependency information." + "description": "The type of the paths for alias." }, - "DeploymentDiagnosticsDefinition": { - "type": "object", - "required": [ - "level", - "code", - "message" - ], + "AliasPattern": { "properties": { - "level": { - "type": "string", - "readOnly": true, - "description": "Denotes the additional response level.", - "enum": [ - "Warning", - "Info", - "Error" - ], - "x-ms-enum": { - "name": "Level", - "modelAsString": true - } - }, - "code": { - "readOnly": true, - "type": "string", - "description": "The error code." - }, - "message": { - "readOnly": true, + "phrase": { "type": "string", - "description": "The error message." + "description": "The alias pattern phrase." }, - "target": { - "readOnly": true, + "variable": { "type": "string", - "description": "The error target." + "description": "The alias pattern variable." }, - "additionalInfo": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorAdditionalInfo" - }, - "x-ms-identifiers": [], - "description": "The error additional info." - } - } - }, - "DeploymentIdentity": { - "description": "The Managed Identity configuration for a deployment.", - "type": "object", - "properties": { "type": { - "description": "The identity type.", + "type": "string", "enum": [ - "None", - "UserAssigned" + "NotSpecified", + "Extract" ], - "type": "string", "x-ms-enum": { - "name": "DeploymentIdentityType", - "modelAsString": true - } - }, - "userAssignedIdentities": { - "type": "object", - "description": "The set of user assigned identities associated with the resource.", - "additionalProperties": { - "$ref": "../../../../../common-types/resource-management/v6/managedidentity.json#/definitions/UserAssignedIdentity", - "x-nullable": true - } + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" } }, - "required": [ - "type" - ] + "description": "The type of the pattern for an alias path." }, - "DeploymentPropertiesExtended": { + "Alias": { "properties": { - "provisioningState": { - "type": "string", - "readOnly": true, - "description": "Denotes the state of provisioning.", - "enum": [ - "NotSpecified", - "Accepted", - "Running", - "Ready", - "Creating", - "Created", - "Deleting", - "Deleted", - "Canceled", - "Failed", - "Succeeded", - "Updating" - ], - "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true - } - }, - "correlationId": { - "readOnly": true, - "type": "string", - "description": "The correlation ID of the deployment." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The timestamp of the template deployment." - }, - "duration": { - "readOnly": true, + "name": { "type": "string", - "description": "The duration of the template deployment." - }, - "outputs": { - "readOnly": true, - "type": "object", - "description": "Key/value pairs that represent deployment output." - }, - "providers": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Provider" - }, - "description": "The list of resource providers needed for the deployment." - }, - "dependencies": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/Dependency" - }, - "description": "The list of deployment dependencies." - }, - "templateLink": { - "readOnly": true, - "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template." - }, - "parameters": { - "readOnly": true, - "type": "object", - "description": "Deployment parameters. " - }, - "parametersLink": { - "readOnly": true, - "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. " + "description": "The alias name." }, - "extensions": { - "readOnly": true, + "paths": { "type": "array", "items": { - "$ref": "#/definitions/DeploymentExtensionDefinition" + "$ref": "#/definitions/AliasPath" }, - "description": "The extensions used in this deployment." + "x-ms-identifiers": [], + "description": "The paths for an alias." }, - "mode": { - "readOnly": true, + "type": { "type": "string", - "description": "The deployment mode. Possible values are Incremental and Complete.", + "description": "The type of the alias.", "enum": [ - "Incremental", - "Complete" + "NotSpecified", + "PlainText", + "Mask" ], "x-ms-enum": { - "name": "DeploymentMode", - "modelAsString": false + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] } }, - "debugSetting": { - "readOnly": true, - "$ref": "#/definitions/DebugSetting", - "description": "The debug setting of the deployment." - }, - "onErrorDeployment": { - "readOnly": true, - "$ref": "#/definitions/OnErrorDeploymentExtended", - "description": "The deployment on error behavior." - }, - "templateHash": { - "readOnly": true, + "defaultPath": { "type": "string", - "description": "The hash produced for the template." - }, - "outputResources": { - "readOnly": true, - "type": "array", - "description": "Array of provisioned resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of provisioned resources." - } - }, - "validatedResources": { - "readOnly": true, - "type": "array", - "description": "Array of validated resources.", - "items": { - "$ref": "#/definitions/ResourceReference", - "description": "Details of validated resources." - } + "description": "The default path for an alias." }, - "error": { - "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment error." + "defaultPattern": { + "$ref": "#/definitions/AliasPattern", + "description": "The default pattern for an alias." }, - "diagnostics": { - "type": "array", + "defaultMetadata": { "readOnly": true, - "items": { - "$ref": "#/definitions/DeploymentDiagnosticsDefinition" - }, - "description": "Contains diagnostic information collected during validation process." - }, - "validationLevel": { - "$ref": "#/definitions/ValidationLevel", - "description": "The validation level of the deployment" + "$ref": "#/definitions/AliasPathMetadata", + "description": "The default alias path metadata. Applies to the default path and to any alias path that doesn't have metadata" } }, - "description": "Deployment properties with additional details." + "description": "The alias type. " }, - "ResourceReference": { - "description": "The resource Id model.", + "ProviderExtendedLocation": { "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The fully qualified Azure resource ID." - }, - "extension": { - "readOnly": true, - "$ref": "#/definitions/DeploymentExtensionDefinition", - "description": "The extension the resource was deployed with." - }, - "resourceType": { - "readOnly": true, + "location": { "type": "string", - "description": "The resource type." - }, - "identifiers": { - "readOnly": true, - "type": "object", - "description": "The extensible resource identifiers." + "description": "The azure location." }, - "apiVersion": { - "readOnly": true, - "type": "string", - "description": "The API version the resource was deployed with." - } - } - }, - "OnErrorDeployment": { - "properties": { "type": { "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" - ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } + "description": "The extended location type." }, - "deploymentName": { - "type": "string", - "description": "The deployment to be used on error case." + "extendedLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The extended locations for the azure location." } }, - "description": "Deployment on error behavior." + "description": "The provider extended location. " }, - "OnErrorDeploymentExtended": { + "ProviderResourceType": { "properties": { - "provisioningState": { - "readOnly": true, + "resourceType": { "type": "string", - "description": "The state of the provisioning for the on error deployment." + "description": "The resource type." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection of locations where this resource type can be created." + }, + "locationMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderExtendedLocation" + }, + "x-ms-identifiers": [ + "location", + "type" + ], + "description": "The location mappings that are supported by this resource type." }, - "type": { - "type": "string", - "description": "The deployment on error behavior type. Possible values are LastSuccessful and SpecificDeployment.", - "enum": [ - "LastSuccessful", - "SpecificDeployment" + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/Alias" + }, + "x-ms-identifiers": [ + "name" ], - "x-ms-enum": { - "name": "OnErrorDeploymentType", - "modelAsString": false - } + "description": "The aliases that are supported by this resource type." + }, + "apiVersions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The API version." }, - "deploymentName": { + "defaultApiVersion": { "type": "string", - "description": "The deployment to be used on error case." - } - }, - "description": "Deployment on error behavior with additional details." - }, - "DeploymentValidateResult": { - "properties": { - "error": { "readOnly": true, - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The deployment validation error." + "description": "The default API version." }, - "id": { - "readOnly": true, - "type": "string", - "description": "The ID of the deployment." + "zoneMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/ZoneMapping" + }, + "x-ms-identifiers": [ + "location" + ] }, - "name": { + "apiProfiles": { + "type": "array", "readOnly": true, - "type": "string", - "description": "The name of the deployment." + "items": { + "$ref": "#/definitions/ApiProfile" + }, + "x-ms-identifiers": [ + "apiVersion", + "profileVersion" + ], + "description": "The API profiles for the resource provider." }, - "type": { - "readOnly": true, + "capabilities": { "type": "string", - "description": "The type of the deployment." + "description": "The additional capabilities offered by this resource type." }, "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "The template deployment properties." + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The properties." } }, - "description": "Information from validate template deployment response." + "description": "Resource type managed by the resource provider." }, - "DeploymentExtended": { + "Provider": { "properties": { "id": { "readOnly": true, "type": "string", - "description": "The ID of the deployment." + "description": "The provider ID." }, - "name": { - "readOnly": true, + "namespace": { "type": "string", - "description": "The name of the deployment." + "description": "The namespace of the resource provider." }, - "type": { + "registrationState": { "readOnly": true, "type": "string", - "description": "The type of the deployment." + "description": "The registration state of the resource provider." }, - "location": { + "registrationPolicy": { + "readOnly": true, "type": "string", - "description": "the location of the deployment." - }, - "properties": { - "$ref": "#/definitions/DeploymentPropertiesExtended", - "description": "Deployment properties." + "description": "The registration policy of the resource provider." }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "Deployment tags" - } - }, - "x-ms-azure-resource": true, - "description": "Deployment information." - }, - "DeploymentListResult": { - "properties": { - "value": { + "resourceTypes": { + "readOnly": true, "type": "array", "items": { - "$ref": "#/definitions/DeploymentExtended" + "$ref": "#/definitions/ProviderResourceType" }, - "description": "An array of deployments." + "x-ms-identifiers": [ + "resourceType" + ], + "description": "The collection of provider resource types." }, - "nextLink": { - "readOnly": true, + "providerAuthorizationConsentState": { "type": "string", - "description": "The URL to use for getting the next set of results." + "enum": [ + "NotSpecified", + "Required", + "NotRequired", + "Consented" + ], + "description": "The provider authorization consent state.", + "x-ms-enum": { + "name": "ProviderAuthorizationConsentState", + "modelAsString": true + } } }, - "description": "List of deployments." + "description": "Resource provider information." }, "ProviderListResult": { "properties": { @@ -6129,255 +2889,63 @@ "value": { "type": "integer", "description": "Value of count." - } - }, - "description": "Tag count." - }, - "TagValue": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The tag value ID." - }, - "tagValue": { - "type": "string", - "description": "The tag value." - }, - "count": { - "$ref": "#/definitions/TagCount", - "description": "The tag value count." - } - }, - "x-ms-azure-resource": true, - "description": "Tag information." - }, - "TagDetails": { - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The tag name ID." - }, - "tagName": { - "type": "string", - "description": "The tag name." - }, - "count": { - "$ref": "#/definitions/TagCount", - "description": "The total number of resources that use the resource tag. When a tag is initially created and has no associated resources, the value is 0." - }, - "values": { - "type": "array", - "items": { - "$ref": "#/definitions/TagValue" - }, - "description": "The list of tag values." - } - }, - "x-ms-azure-resource": true, - "description": "Tag details." - }, - "TagsListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/TagDetails" - }, - "description": "An array of tags." - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URL to use for getting the next set of results." - } - }, - "description": "List of subscription tags." - }, - "TargetResource": { - "properties": { - "id": { - "type": "string", - "description": "The Azure resource ID of the resource." - }, - "resourceName": { - "type": "string", - "description": "The name of the resource." - }, - "resourceType": { - "type": "string", - "description": "The type of the resource." - }, - "extension": { - "$ref": "#/definitions/DeploymentExtensionDefinition", - "description": "The extension the resource was deployed with." - }, - "identifiers": { - "type": "object", - "description": "The extensible resource identifiers." - }, - "apiVersion": { - "type": "string", - "description": "The API version the resource was deployed with." - }, - "symbolicName": { - "type": "string", - "description": "The symbolic name of the resource as defined in the deployment template." - } - }, - "description": "Target resource." - }, - "HttpMessage": { - "properties": { - "content": { - "type": "object", - "description": "HTTP message content." - } - }, - "description": "HTTP message." - }, - "DeploymentOperationProperties": { - "properties": { - "provisioningOperation": { - "readOnly": true, - "type": "string", - "description": "The name of the current provisioning operation.", - "enum": [ - "NotSpecified", - "Create", - "Delete", - "Waiting", - "AzureAsyncOperationWaiting", - "ResourceCacheWaiting", - "Action", - "Read", - "EvaluateDeploymentOutput", - "DeploymentCleanup" - ], - "x-ms-enum": { - "name": "ProvisioningOperation", - "modelAsString": false, - "values": [ - { - "value": "NotSpecified", - "description": "The provisioning operation is not specified." - }, - { - "value": "Create", - "description": "The provisioning operation is create." - }, - { - "value": "Delete", - "description": "The provisioning operation is delete." - }, - { - "value": "Waiting", - "description": "The provisioning operation is waiting." - }, - { - "value": "AzureAsyncOperationWaiting", - "description": "The provisioning operation is waiting Azure async operation." - }, - { - "value": "ResourceCacheWaiting", - "description": "The provisioning operation is waiting for resource cache." - }, - { - "value": "Action", - "description": "The provisioning operation is action." - }, - { - "value": "Read", - "description": "The provisioning operation is read." - }, - { - "value": "EvaluateDeploymentOutput", - "description": "The provisioning operation is evaluate output." - }, - { - "value": "DeploymentCleanup", - "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." - } - ] - } - }, - "provisioningState": { - "readOnly": true, - "type": "string", - "description": "The state of the provisioning." - }, - "timestamp": { - "readOnly": true, - "type": "string", - "format": "date-time", - "description": "The date and time of the operation." - }, - "duration": { - "readOnly": true, - "type": "string", - "description": "The duration of the operation." - }, - "serviceRequestId": { + } + }, + "description": "Tag count." + }, + "TagValue": { + "properties": { + "id": { "readOnly": true, "type": "string", - "description": "Deployment operation service request id." + "description": "The tag value ID." }, - "statusCode": { - "readOnly": true, + "tagValue": { "type": "string", - "description": "Operation status code from the resource provider. This property may not be set if a response has not yet been received." - }, - "statusMessage": { - "readOnly": true, - "description": "Operation status message from the resource provider. This property is optional. It will only be provided if an error was received from the resource provider.", - "$ref": "#/definitions/StatusMessage" - }, - "targetResource": { - "readOnly": true, - "$ref": "#/definitions/TargetResource", - "description": "The target resource." - }, - "request": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP request message." + "description": "The tag value." }, - "response": { - "readOnly": true, - "$ref": "#/definitions/HttpMessage", - "description": "The HTTP response message." + "count": { + "$ref": "#/definitions/TagCount", + "description": "The tag value count." } }, - "description": "Deployment operation properties." + "x-ms-azure-resource": true, + "description": "Tag information." }, - "DeploymentOperation": { + "TagDetails": { "properties": { "id": { "readOnly": true, "type": "string", - "description": "Full deployment operation ID." + "description": "The tag name ID." }, - "operationId": { - "readOnly": true, + "tagName": { "type": "string", - "description": "Deployment operation ID." + "description": "The tag name." }, - "properties": { - "$ref": "#/definitions/DeploymentOperationProperties", - "description": "Deployment properties." + "count": { + "$ref": "#/definitions/TagCount", + "description": "The total number of resources that use the resource tag. When a tag is initially created and has no associated resources, the value is 0." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/TagValue" + }, + "description": "The list of tag values." } }, - "description": "Deployment operation information." + "x-ms-azure-resource": true, + "description": "Tag details." }, - "DeploymentOperationsListResult": { + "TagsListResult": { "properties": { "value": { "type": "array", "items": { - "$ref": "#/definitions/DeploymentOperation" + "$ref": "#/definitions/TagDetails" }, - "description": "An array of deployment operations." + "description": "An array of tags." }, "nextLink": { "readOnly": true, @@ -6385,7 +2953,7 @@ "description": "The URL to use for getting the next set of results." } }, - "description": "List of deployment operations." + "description": "List of subscription tags." }, "ResourceProviderOperationDisplayProperties": { "properties": { @@ -6529,229 +3097,6 @@ } } }, - "TemplateHashResult": { - "description": "Result of the request to calculate template hash. It contains a string of minified template and its hash.", - "properties": { - "minifiedTemplate": { - "type": "string", - "description": "The minified template string." - }, - "templateHash": { - "type": "string", - "description": "The template hash." - } - } - }, - "WhatIfPropertyChange": { - "required": [ - "path", - "propertyChangeType" - ], - "properties": { - "path": { - "type": "string", - "description": "The path of the property." - }, - "propertyChangeType": { - "type": "string", - "description": "The type of property change.", - "enum": [ - "Create", - "Delete", - "Modify", - "Array", - "NoEffect" - ], - "x-ms-enum": { - "name": "PropertyChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The property does not exist in the current state but is present in the desired state. The property will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The property exists in the current state and is missing from the desired state. It will be deleted when the deployment is executed." - }, - { - "value": "Modify", - "description": "The property exists in both current and desired state and is different. The value of the property will change when the deployment is executed." - }, - { - "value": "Array", - "description": "The property is an array and contains nested changes." - }, - { - "value": "NoEffect", - "description": "The property will not be set or updated." - } - ] - } - }, - "before": { - "type": "object", - "description": "The value of the property before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The value of the property after the deployment is executed." - }, - "children": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "Nested property changes." - } - }, - "description": "The predicted change to the resource property." - }, - "WhatIfChange": { - "description": "Information about a single resource change predicted by What-If operation.", - "required": [ - "changeType" - ], - "properties": { - "resourceId": { - "type": "string", - "description": "Resource ID" - }, - "deploymentId": { - "type": "string", - "description": "The resource id of the Deployment responsible for this change." - }, - "symbolicName": { - "type": "string", - "description": "The symbolic name of the resource responsible for this change." - }, - "identifiers": { - "type": "object", - "description": "A subset of properties that uniquely identify a Bicep extensible resource because it lacks a resource id like an Azure resource has." - }, - "extension": { - "$ref": "#/definitions/DeploymentExtensionDefinition", - "description": "The extension the resource was deployed with." - }, - "changeType": { - "type": "string", - "description": "Type of change that will be made to the resource when the deployment is executed.", - "enum": [ - "Create", - "Delete", - "Ignore", - "Deploy", - "NoChange", - "Modify", - "Unsupported" - ], - "x-ms-enum": { - "name": "ChangeType", - "modelAsString": false, - "values": [ - { - "value": "Create", - "description": "The resource does not exist in the current state but is present in the desired state. The resource will be created when the deployment is executed." - }, - { - "value": "Delete", - "description": "The resource exists in the current state and is missing from the desired state. The resource will be deleted when the deployment is executed." - }, - { - "value": "Ignore", - "description": "The resource exists in the current state and is missing from the desired state. The resource will not be deployed or modified when the deployment is executed." - }, - { - "value": "Deploy", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource may or may not change." - }, - { - "value": "NoChange", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will not change." - }, - { - "value": "Modify", - "description": "The resource exists in the current state and the desired state and will be redeployed when the deployment is executed. The properties of the resource will change." - }, - { - "value": "Unsupported", - "description": "The resource is not supported by What-If." - } - ] - } - }, - "unsupportedReason": { - "type": "string", - "description": "The explanation about why the resource is unsupported by What-If." - }, - "before": { - "type": "object", - "description": "The snapshot of the resource before the deployment is executed." - }, - "after": { - "type": "object", - "description": "The predicted snapshot of the resource after the deployment is executed." - }, - "delta": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfPropertyChange" - }, - "x-ms-identifiers": [ - "path" - ], - "description": "The predicted changes to resource properties." - } - } - }, - "WhatIfOperationProperties": { - "description": "Deployment operation properties.", - "properties": { - "changes": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "description": "List of resource changes predicted by What-If operation." - }, - "potentialChanges": { - "type": "array", - "items": { - "$ref": "#/definitions/WhatIfChange" - }, - "description": "List of resource changes predicted by What-If operation." - }, - "diagnostics": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/DeploymentDiagnosticsDefinition" - }, - "description": "List of resource diagnostics detected by What-If operation." - } - } - }, - "WhatIfOperationResult": { - "description": "Result of the What-If operation. Contains a list of predicted changes and a URL link to get to the next set of results.", - "properties": { - "status": { - "type": "string", - "description": "Status of the What-If operation." - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/WhatIfOperationProperties", - "description": "What-If operation properties." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "Error when What-If operation fails." - } - } - }, "Tags": { "description": "A dictionary of name and value pairs.", "properties": { @@ -6968,38 +3313,6 @@ } } }, - "StatusMessage": { - "type": "object", - "description": "Operation status message object.", - "properties": { - "status": { - "type": "string", - "description": "Status of the deployment operation." - }, - "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", - "description": "The error reported by the operation." - } - } - }, - "ExpressionEvaluationOptions": { - "properties": { - "scope": { - "type": "string", - "description": "The scope to be used for evaluation of parameters, variables and functions in a nested template.", - "enum": [ - "NotSpecified", - "Outer", - "Inner" - ], - "x-ms-enum": { - "name": "ExpressionEvaluationOptionsScopeType", - "modelAsString": true - } - } - }, - "description": "Specifies whether template expressions are evaluated within the scope of the parent template or nested template." - }, "ZoneMapping": { "type": "object", "properties": { @@ -7014,133 +3327,6 @@ } } } - }, - "ValidationLevel": { - "type": "string", - "description": "The level of validation performed on the deployment.", - "enum": [ - "Template", - "Provider", - "ProviderNoRbac" - ], - "x-ms-enum": { - "name": "ValidationLevel", - "modelAsString": true, - "values": [ - { - "description": "Static analysis of the template is performed.", - "value": "Template" - }, - { - "description": "Static analysis of the template is performed and resource declarations are sent to resource providers for semantic validation. Validates that the caller has RBAC write permissions on each resource.", - "value": "Provider" - }, - { - "description": "Static analysis of the template is performed and resource declarations are sent to resource providers for semantic validation. Skips validating that the caller has RBAC write permissions on each resource.", - "value": "ProviderNoRbac" - } - ] - } - }, - "DeploymentExtensionDefinition": { - "type": "object", - "properties": { - "alias": { - "readOnly": true, - "type": "string", - "description": "The alias of the extension as defined in the deployment template." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The extension name." - }, - "version": { - "readOnly": true, - "type": "string", - "description": "The extension version." - }, - "configId": { - "readOnly": true, - "type": "string", - "description": "The extension configuration ID. It uniquely identifies a deployment control plane within an extension." - }, - "config": { - "readOnly": true, - "$ref": "#/definitions/DeploymentExtensionConfig", - "description": "The extension configuration." - } - } - }, - "DeploymentExtensionConfig": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/DeploymentExtensionConfigItem" - }, - "description": "An extension configuration. Keys of the object are defined by an extension's configuration schema." - }, - "DeploymentExtensionConfigItem": { - "type": "object", - "properties": { - "type": { - "readOnly": true, - "$ref": "#/definitions/ExtensionConfigPropertyType", - "description": "The value type of the extension config property." - }, - "value": { - "description": "The value of the extension config property." - }, - "keyVaultReference": { - "$ref": "#/definitions/KeyVaultParameterReference", - "description": "The Azure Key Vault reference used to retrieve the secret value of the extension config property." - } - } - }, - "ExtensionConfigPropertyType": { - "type": "string", - "enum": [ - "String", - "Int", - "Bool", - "Array", - "Object", - "SecureString", - "SecureObject" - ], - "x-ms-enum": { - "name": "ExtensionConfigPropertyType", - "modelAsString": true, - "values": [ - { - "description": "Property type representing a string value.", - "value": "String" - }, - { - "description": "Property type representing an integer value.", - "value": "Int" - }, - { - "description": "Property type representing a boolean value.", - "value": "Bool" - }, - { - "description": "Property type representing an array value.", - "value": "Array" - }, - { - "description": "Property type representing an object value.", - "value": "Object" - }, - { - "description": "Property type representing a secure string value.", - "value": "SecureString" - }, - { - "description": "Property type representing a secure object value.", - "value": "SecureObject" - } - ] - } } }, "parameters": { @@ -7170,17 +3356,6 @@ "type": "string", "description": "The Microsoft Azure subscription ID." }, - "DeploymentNameParameter": { - "name": "deploymentName", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", - "x-ms-parameter-location": "method", - "minLength": 1, - "maxLength": 64, - "description": "The name of the deployment." - }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/resources/resource-manager/Microsoft.Resources/suppressions.yaml b/specification/resources/resource-manager/Microsoft.Resources/suppressions.yaml new file mode 100644 index 000000000000..56fd894cf17d --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/suppressions.yaml @@ -0,0 +1,55 @@ + +- tool: TypeSpecRequirement + paths: + - deployments/stable/2015-11-01/deployments.json + - deployments/stable/2016-02-01/deployments.json + - deployments/stable/2016-07-01/deployments.json + - deployments/stable/2016-09-01/deployments.json + - deployments/stable/2017-05-10/deployments.json + - deployments/stable/2018-02-01/deployments.json + - deployments/stable/2018-05-01/deployments.json + - deployments/stable/2019-03-01/deployments.json + - deployments/stable/2019-05-01/deployments.json + - deployments/stable/2019-05-10/deployments.json + - deployments/stable/2019-07-01/deployments.json + - deployments/stable/2019-08-01/deployments.json + - deployments/stable/2019-10-01/deployments.json + - deployments/stable/2020-06-01/deployments.json + - deployments/stable/2020-08-01/deployments.json + - deployments/stable/2020-10-01/deployments.json + - deployments/stable/2021-01-01/deployments.json + - deployments/stable/2021-04-01/deployments.json + - deployments/stable/2022-09-01/deployments.json + - deployments/stable/2023-07-01/deployments.json + - deployments/stable/2024-03-01/deployments.json + - deployments/stable/2024-07-01/deployments.json + - deployments/stable/2024-11-01/deployments.json + - deployments/stable/2025-03-01/deployments.json + - deployments/stable/2025-04-01/deployments.json + reason: Brownfield service not ready to migrate + +- tool: TypeSpecRequirement + paths: + - templateSpecs/preview/2019-06-01-preview/templateSpecs.json + - templateSpecs/preview/2021-03-01-preview/templateSpecs.json + - templateSpecs/stable/2021-05-01/templateSpecs.json + - templateSpecs/stable/2022-02-01/templateSpecs.json + reason: Brownfield service not ready to migrate + +- tool: TypeSpecRequirement + paths: + - deploymentStacks/preview/2022-08-01-preview/deploymentStacks.json + - deploymentStacks/stable/2024-03-01/deploymentStacks.json + reason: Brownfield service not ready to migrate + +- tool: TypeSpecRequirement + paths: + - deploymentScripts/preview/2019-10-01-preview/deploymentScripts.json + - deploymentScripts/stable/2020-10-01/deploymentScripts.json + - deploymentScripts/stable/2023-08-01/deploymentScripts.json + reason: Brownfield service not ready to migrate + +- tool: TypeSpecRequirement + paths: + - bicep/stable/2023-11-01/bicepClient.json + reason: Brownfield service not ready to migrate diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecVersionsCreate.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecVersionsCreate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecVersionsCreate.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecVersionsCreate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecVersionsDelete.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecVersionsDelete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecVersionsDelete.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecVersionsDelete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecVersionsGet.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecVersionsGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecVersionsGet.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecVersionsGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecVersionsList.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecVersionsList.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecVersionsList.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecVersionsList.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecVersionsPatch.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecVersionsPatch.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecVersionsPatch.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecVersionsPatch.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecsCreate.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecsCreate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecsCreate.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecsCreate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecsDelete.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecsDelete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecsDelete.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecsDelete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecsGet.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecsGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecsGet.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecsGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecsListByResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecsListByResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecsListByResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecsListByResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecsListBySubscription.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecsListBySubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecsListBySubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecsListBySubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecsPatch.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecsPatch.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/examples/TemplateSpecsPatch.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/examples/TemplateSpecsPatch.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/templateSpecs.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/templateSpecs.json similarity index 99% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/templateSpecs.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/templateSpecs.json index e275be2dd62a..9281a6d3210a 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-06-01-preview/templateSpecs.json +++ b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2019-06-01-preview/templateSpecs.json @@ -688,7 +688,7 @@ "readOnly": true, "type": "object", "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" } } }, @@ -843,7 +843,7 @@ "TemplateSpecsError": { "properties": { "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } }, "description": "Template Specs error response." diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsCreate.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecVersionsCreate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsCreate.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecVersionsCreate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsDelete.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecVersionsDelete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsDelete.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecVersionsDelete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsGet.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecVersionsGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsGet.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecVersionsGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsList.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecVersionsList.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsList.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecVersionsList.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsPatch.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecVersionsPatch.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecVersionsPatch.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecVersionsPatch.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsCreate.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecsCreate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsCreate.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecsCreate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsDelete.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecsDelete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsDelete.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecsDelete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsGet.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecsGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsGet.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecsGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsListByResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecsListByResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsListByResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecsListByResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsListBySubscription.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecsListBySubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsListBySubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecsListBySubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsPatch.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecsPatch.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/examples/TemplateSpecsPatch.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/examples/TemplateSpecsPatch.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/templateSpecs.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/templateSpecs.json similarity index 99% rename from specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/templateSpecs.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/templateSpecs.json index 18a24d1bf71e..e23187c6a0c1 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2021-03-01-preview/templateSpecs.json +++ b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/preview/2021-03-01-preview/templateSpecs.json @@ -692,7 +692,7 @@ "readOnly": true, "type": "object", "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" } } }, @@ -822,7 +822,7 @@ "TemplateSpecsError": { "properties": { "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } }, "description": "Template Specs error response." diff --git a/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.csharp.md b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.csharp.md new file mode 100644 index 000000000000..56c6263f2b8c --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.csharp.md @@ -0,0 +1,15 @@ +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 1 + clear-output-folder: true + client-side-validation: false + namespace: Azure.ResourceManager.Resources.TemplateSpecs + output-folder: $(csharp-sdks-folder)/resources/Azure.ResourceManager.Resources.TemplateSpecs/GeneratedProtocol +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.go.md b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.go.md new file mode 100644 index 000000000000..9f579b7e0505 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.go.md @@ -0,0 +1,12 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + + +``` yaml $(go) && $(track2) +license-header: MICROSOFT_MIT_NO_VERSION +module-name: sdk/resourcemanager/resources/armtemplatespecs +module: github.com/Azure/azure-sdk-for-go/$(module-name) +output-folder: $(go-sdk-folder)/$(module-name) +azure-arm: true +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.java.md b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.java.md new file mode 100644 index 000000000000..8f621f89ca29 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.java.md @@ -0,0 +1,14 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +java: + azure-arm: true + fluent: true + namespace: com.microsoft.azure.management.resources.templatespecs + output-folder: $(azure-libraries-for-java-folder)/sdk/resources/templatespecs + license-header: MICROSOFT_MIT_NO_CODEGEN + payload-flattening-threshold: 1 +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.md b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.md new file mode 100644 index 000000000000..434c74a5fc42 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.md @@ -0,0 +1,144 @@ +# TemplateSpecs + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for TemplateSpecs. + +## Getting Started + +To build the SDKs for TemplateSpecs, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the TemplateSpecs client. + +``` yaml +title: TemplateSpecsClient +description: TemplateSpecs Client +openapi-type: arm +tag: package-2022-02 +``` + +--- + +### Tag: package-2019-06 + +These settings apply only when `--tag=package-2019-06` is specified on the command line. + +``` yaml $(tag) == 'package-2019-06' +input-file: + - preview/2019-06-01-preview/templateSpecs.json +``` + +### Tag: package-2021-03 + +These settings apply only when `--tag=package-2021-03` is specified on the command line. + +``` yaml $(tag) == 'package-2021-03' +input-file: + - preview/2021-03-01-preview/templateSpecs.json +``` + +### Tag: package-2021-05 + +These settings apply only when `--tag=package-2021-05` is specified on the command line. + +``` yaml $(tag) == 'package-2021-05' +input-file: + - stable/2021-05-01/templateSpecs.json +``` + +### Tag: package-2022-02 + +These settings apply only when `--tag=package-2022-02` is specified on the command line. + +``` yaml $(tag) == 'package-2022-02' +input-file: + - stable/2022-02-01/templateSpecs.json +``` + +## Suppression + +``` yaml +directive: + - suppress: R3006 + from: templateSpecs.json + where: + - $.definitions.TemplateSpec.properties + - $.definitions.TemplateSpecVersion.properties + - $.definitions.TemplateSpecUpdateModel.properties + - $.definitions.TemplateSpecVersionUpdateModel.properties + reason: Currently systemData is not allowed + - suppress: TrackedResourceListByImmediateParent + from: templateSpecs.json + where: $.definitions + reason: Tooling issue + - suppress: TrackedResourceListByResourceGroup + from: templateSpecs.json + where: $.definitions.TemplateSpecVersion + reason: Tooling issue + - suppress: OperationsAPIImplementation + from: templateSpecs.json + reason: Operations API is implemented as a separate service. + - suppress: AvoidAdditionalProperties + from: templateSpecs.json + reason: Pre-existing lint error. + - suppress: MissingTypeObject + from: templateSpecs.json + reason: Pre-existing lint error. + - suppress: ParametersInPointGet + from: templateSpecs.json + reason: Pre-existing lint error. + - suppress: PathForTrackedResourceTypes + from: templateSpecs.json + reason: Pre-existing lint error. +``` + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +``` yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-net + - repo: azure-sdk-for-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-powershell +``` + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Java + +See configuration in [readme.java.md](./readme.java.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) diff --git a/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.python.md b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.python.md new file mode 100644 index 000000000000..b12981ff7aa7 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.python.md @@ -0,0 +1,18 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(python) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-resources-templatespecs +namespace: azure.mgmt.resources.templatespecs +package-version: 1.0.0 +clear-output-folder: true +``` + +``` yaml $(python) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resources-templatespecs/azure/mgmt/resources/templatespecs +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.typescript.md b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.typescript.md new file mode 100644 index 000000000000..f96f18b45f4f --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/readme.typescript.md @@ -0,0 +1,13 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-resourcestemplatespecs" + output-folder: "$(typescript-sdks-folder)/sdk/resources/arm-resourcestemplatespecs" + override-client-name: TemplateSpecsClient + generate-metadata: true +``` diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsCreate.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecVersionsCreate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsCreate.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecVersionsCreate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsDelete.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecVersionsDelete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsDelete.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecVersionsDelete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsGet.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecVersionsGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsGet.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecVersionsGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsList.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecVersionsList.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsList.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecVersionsList.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsPatch.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecVersionsPatch.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecVersionsPatch.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecVersionsPatch.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsCreate.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecsCreate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsCreate.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecsCreate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsDelete.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecsDelete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsDelete.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecsDelete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsGet.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecsGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsGet.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecsGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsListByResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecsListByResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsListByResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecsListByResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsListBySubscription.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecsListBySubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsListBySubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecsListBySubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsPatch.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecsPatch.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/examples/TemplateSpecsPatch.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/examples/TemplateSpecsPatch.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/templateSpecs.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/templateSpecs.json similarity index 99% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/templateSpecs.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/templateSpecs.json index fdcc5063ece1..23e5f5ef2e8b 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2021-05-01/templateSpecs.json +++ b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2021-05-01/templateSpecs.json @@ -692,7 +692,7 @@ "readOnly": true, "type": "object", "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" } } }, @@ -825,7 +825,7 @@ "TemplateSpecsError": { "properties": { "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } }, "description": "Template Specs error response." diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/BuiltInTemplateSpecVersionsGet.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/BuiltInTemplateSpecVersionsGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/BuiltInTemplateSpecVersionsGet.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/BuiltInTemplateSpecVersionsGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/BuiltInTemplateSpecVersionsList.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/BuiltInTemplateSpecVersionsList.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/BuiltInTemplateSpecVersionsList.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/BuiltInTemplateSpecVersionsList.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/BuiltInTemplateSpecsGet.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/BuiltInTemplateSpecsGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/BuiltInTemplateSpecsGet.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/BuiltInTemplateSpecsGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/BuiltInTemplateSpecsList.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/BuiltInTemplateSpecsList.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/BuiltInTemplateSpecsList.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/BuiltInTemplateSpecsList.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecVersionsCreate.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecVersionsCreate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecVersionsCreate.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecVersionsCreate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecVersionsDelete.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecVersionsDelete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecVersionsDelete.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecVersionsDelete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecVersionsGet.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecVersionsGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecVersionsGet.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecVersionsGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecVersionsList.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecVersionsList.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecVersionsList.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecVersionsList.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecVersionsPatch.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecVersionsPatch.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecVersionsPatch.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecVersionsPatch.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecsCreate.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecsCreate.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecsCreate.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecsCreate.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecsDelete.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecsDelete.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecsDelete.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecsDelete.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecsGet.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecsGet.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecsGet.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecsGet.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecsListByResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecsListByResourceGroup.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecsListByResourceGroup.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecsListByResourceGroup.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecsListBySubscription.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecsListBySubscription.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecsListBySubscription.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecsListBySubscription.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecsPatch.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecsPatch.json similarity index 100% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/examples/TemplateSpecsPatch.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/examples/TemplateSpecsPatch.json diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/templateSpecs.json b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/templateSpecs.json similarity index 99% rename from specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/templateSpecs.json rename to specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/templateSpecs.json index 5821a677b1d1..e1b14f9dcd92 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2022-02-01/templateSpecs.json +++ b/specification/resources/resource-manager/Microsoft.Resources/templateSpecs/stable/2022-02-01/templateSpecs.json @@ -849,7 +849,7 @@ "readOnly": true, "type": "object", "description": "Azure Resource Manager metadata containing createdBy and modifiedBy information.", - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" } } }, @@ -984,7 +984,7 @@ "type": "object", "properties": { "error": { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + "$ref": "../../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } }, "description": "Template Specs error response." diff --git a/specification/resources/resource-manager/readme.go.md b/specification/resources/resource-manager/readme.go.md index 7a4daf9c0450..e439424a6139 100644 --- a/specification/resources/resource-manager/readme.go.md +++ b/specification/resources/resource-manager/readme.go.md @@ -20,14 +20,6 @@ output-folder: $(go-sdk-folder)/$(module-name) azure-arm: true ``` -``` yaml $(go) && $(track2) && $(package-deploymentscripts) -license-header: MICROSOFT_MIT_NO_VERSION -module-name: sdk/resourcemanager/resources/armdeploymentscripts -module: github.com/Azure/azure-sdk-for-go/$(module-name) -output-folder: $(go-sdk-folder)/$(module-name) -azure-arm: true -``` - ``` yaml $(go) && $(track2) && $(package-features) license-header: MICROSOFT_MIT_NO_VERSION module-name: sdk/resourcemanager/resources/armfeatures @@ -78,14 +70,6 @@ modelerfour: lenient-model-deduplication: true ``` -``` yaml $(go) && $(track2) && $(package-templatespecs) -license-header: MICROSOFT_MIT_NO_VERSION -module-name: sdk/resourcemanager/resources/armtemplatespecs -module: github.com/Azure/azure-sdk-for-go/$(module-name) -output-folder: $(go-sdk-folder)/$(module-name) -azure-arm: true -``` - ``` yaml $(go) && $(track2) && $(package-changes) license-header: MICROSOFT_MIT_NO_VERSION module-name: sdk/resourcemanager/resources/armchanges @@ -94,14 +78,6 @@ output-folder: $(go-sdk-folder)/$(module-name) azure-arm: true ``` -``` yaml $(go) && $(track2) && $(package-deploymentstacks) -license-header: MICROSOFT_MIT_NO_VERSION -module-name: sdk/resourcemanager/resources/armdeploymentstacks -module: github.com/Azure/azure-sdk-for-go/$(module-name) -output-folder: $(go-sdk-folder)/$(module-name) -azure-arm: true -``` - ``` yaml $(go) && $(track2) && $(package-databoundaries) license-header: MICROSOFT_MIT_NO_VERSION module-name: sdk/resourcemanager/databoundaries/armdataboundaries diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index 0112ad45c48a..bae627943ae5 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -65,18 +65,6 @@ tag: package-links-2016-09 tag: package-managedapplications-2018-06 ``` -``` yaml $(package-deploymentscripts) -tag: package-deploymentscripts-2023-08 -``` - -``` yaml $(package-templatespecs) -tag: package-templatespecs-2022-02 -``` - -``` yaml $(package-deploymentstacks) -tag: package-deploymentstacks-2024-03 -``` - ``` yaml $(package-changes) tag: package-changes-2022-05 ``` @@ -85,10 +73,6 @@ tag: package-changes-2022-05 tag: package-snapshots-2022-11 ``` -``` yaml $(package-bicep) -tag: package-bicep-2023-11 -``` - ### Tag: package-policy-2025-03-stable These settings apply only when `--tag=package-policy-2025-03-stable` is specified on the command line. @@ -165,14 +149,6 @@ input-file: - Microsoft.Authorization/stable/2024-04-01/policyAssignments.json ``` -### Tag: package-bicep-2023-11 - -These settings apply only when `--tag=package-bicep-2023-11` is specified on the command line. - -``` yaml $(tag) == 'package-bicep-2023-11' -input-file: - - Microsoft.Resources/stable/2023-11-01/bicepClient.json -``` ### Tag: package-policy-2023-04 @@ -212,18 +188,6 @@ override-info: title: PolicyClient ``` -### Tag: package-deploymentscripts-2023-08 - -These settings apply only when `--tag=package-deploymentscripts-2023-08` is specified on the command line. - -``` yaml $(tag) == 'package-deploymentscripts-2023-08' -input-file: - - Microsoft.Resources/stable/2023-08-01/deploymentScripts.json - -suppressions: - - code: OperationsAPIImplementation - reason: OperationsAPI will come from Resources -``` ### Tag: package-resources-2023-07 @@ -540,23 +504,7 @@ input-file: - Microsoft.Resources/stable/2021-01-01/subscriptions.json ``` -### Tag: package-deploymentscripts-2020-10 -These settings apply only when `--tag=package-deploymentscripts-2020-10` is specified on the command line. - -``` yaml $(tag) == 'package-deploymentscripts-2020-10' -input-file: -- Microsoft.Resources/stable/2020-10-01/deploymentScripts.json -``` - -### Tag: package-deploymentscripts-2019-10-preview - -These settings apply only when `--tag=package-deploymentscripts-2019-10-preview` is specified on the command line. - -``` yaml $(tag) == 'package-deploymentscripts-2019-10-preview' -input-file: -- Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json -``` ### Tag: package-features-2021-07 @@ -746,59 +694,11 @@ override-info: title: PolicyClient ``` -### Tag: package-templatespecs-2022-02 - -These settings apply only when `--tag=package-templatespecs-2022-02` is specified on the command line. - -``` yaml $(tag) == 'package-templatespecs-2022-02' -input-file: -- Microsoft.Resources/stable/2022-02-01/templateSpecs.json -``` - -### Tag: package-templatespecs-2021-05 - -These settings apply only when `--tag=package-templatespecs-2021-05` is specified on the command line. - -``` yaml $(tag) == 'package-templatespecs-2021-05' -input-file: -- Microsoft.Resources/stable/2021-05-01/templateSpecs.json -``` - -### Tag: package-templatespecs-2021-03-preview - -These settings apply only when `--tag=package-templatespecs-2021-03-preview` is specified on the command line. -``` yaml $(tag) == 'package-templatespecs-2021-03-preview' -input-file: -- Microsoft.Resources/preview/2021-03-01-preview/templateSpecs.json -``` -### Tag: package-templatespecs-2019-06-preview -These settings apply only when `--tag=package-templatespecs-2019-06-preview` is specified on the command line. -``` yaml $(tag) == 'package-templatespecs-2019-06-preview' -input-file: -- Microsoft.Resources/preview/2019-06-01-preview/templateSpecs.json -``` - -### Tag: package-deploymentstacks-2022-08-preview - -These settings apply only when `--tag=package-deploymentstacks-2022-08-preview` is specified on the command line. - -``` yaml $(tag) == 'package-deploymentstacks-2022-08-preview' -input-file: -- Microsoft.Resources/preview/2022-08-01-preview/deploymentStacks.json -``` -### Tag: package-deploymentstacks-2024-03 - -These settings apply only when `--tag=package-deploymentstacks-2024-03` is specified on the command line. - -``` yaml $(tag) == 'package-deploymentstacks-2024-03' -input-file: -- Microsoft.Resources/stable/2024-03-01/deploymentStacks.json -``` ### Tag: package-policy-2016-12 @@ -1226,88 +1126,6 @@ directive: from: managedapplications.json where: $.definitions.GenericResource.properties reason: managedBy is a top level property - - from: deploymentScripts.json - suppress: TrackedResourceGetOperation - where: $.definitions.AzureCliScript - reason: Tooling issue. - - from: deploymentScripts.json - suppress: TrackedResourcePatchOperation - where: $.definitions.AzureCliScript - reason: Tooling issue. - - from: deploymentScripts.json - suppress: TrackedResourceGetOperation - where: $.definitions.AzurePowerShellScript - reason: Tooling issue - - from: deploymentScripts.json - suppress: TrackedResourcePatchOperation - where: $.definitions.AzurePowerShellScript - reason: Tooling issue - - suppress: OperationsAPIImplementation - from: deploymentScripts.json - where: $.paths - reason: OperationsAPI will come from Resources - - suppress: IntegerTypeMustHaveFormat - from: deploymentScripts.json - reason: Tooling issue, default is int32, explicitly mentioning the format as per doc, it still flags breaking change. - - suppress: ResourceNameRestriction - from: deploymentScripts.json - reason: Pre-existing lint error. Not related to this version release. Will fix in the future. - - suppress: PropertiesTypeObjectNoDefinition - from: deploymentScripts.json - reason: Pre-existing lint error. Not related to this version release. Will fix in the future. - - suppress: SubscriptionsAndResourceGroupCasing - from: deploymentScripts.json - reason: Pre-existing lint error. Not related to this version release. Will fix in the future. - - suppress: ParametersInPointGet - from: deploymentScripts.json - reason: Pre-existing lint error. Not related to this version release. Will fix in the future. - - suppress: GetCollectionOnlyHasValueAndNextLink - from: deploymentScripts.json - reason: Pre-existing lint error. Not related to this version release. Will fix in the future. - - suppress: PatchIdentityProperty - from: deploymentScripts.json - reason: Pre-existing lint error. Not related to this version release. Will fix in the future. - - suppress: LroErrorContent - from: deploymentScripts.json - reason: Pre-existing lint error. Not related to this version release. Will fix in the future. - - suppress: ProvisioningStateSpecifiedForLROPut - from: deploymentScripts.json - reason: Pre-existing lint error. Not related to this version release. Will fix in the future. - - from: deploymentScripts.json - suppress: R3006 - where: - - $.definitions.DeploymentScript.properties - - $.definitions.AzureCliScript.properties - - $.definitions.AzurePowerShellScript.properties - reason: Currently systemData is not allowed - - from: deploymentStacks.json - suppress: OperationsAPIImplementation - where: $.paths - reason: OperationsAPI will come from Resources - - suppress: OperationsAPIImplementation - from: templateSpecs.json - where: $.paths - reason: OperationsAPI will come from Resources - - suppress: R3006 - from: templateSpecs.json - where: - - $.definitions.TemplateSpec.properties - - $.definitions.TemplateSpecVersion.properties - - $.definitions.TemplateSpecUpdateModel.properties - - $.definitions.TemplateSpecVersionUpdateModel.properties - reason: Currently systemData is not allowed - - suppress: TrackedResourceListByImmediateParent - from: templateSpecs.json - where: $.definitions - reason: Tooling issue - - suppress: TrackedResourceListByResourceGroup - from: templateSpecs.json - where: $.definitions.TemplateSpecVersion - reason: Tooling issue - - from: deploymentStacks.json - suppress: TrackedResourcePatchOperation - where: $.definitions - reason: Not a tracked resource. - suppress: OperationsAPIImplementation where: $.paths from: dataPolicyManifests.json @@ -1568,36 +1386,6 @@ directive: - suppress: RequiredReadOnlySystemData from: resources.json reason: Pre-existing lint error. Not related to this version release. Will fix in the future - - suppress: PathForTrackedResourceTypes - from: deploymentStacks.json - reason: "A deployment stack resource is a proxy location-mapped resource type." - - suppress: TenantLevelAPIsNotAllowed - from: deploymentStacks.json - reason: "Working with deployment stacks at the management group scope is supported." - - suppress: TrackedResourcePatchOperation - from: deploymentStacks.json - reason: "A deployment stack resource is a proxy location-mapped resource type." - - suppress: AvoidAdditionalProperties - from: deploymentStacks.json - reason: "Deployment properties such as 'parameters', 'outputs', and 'template' are dynamic types. For example, properties of the parameters object are defined by the template content." - - suppress: PostResponseCodes - from: deploymentStacks.json - reason: "Validate endpoints have 200, 202, 400, and default responses. The 400 response inherits the error response." - - suppress: LroErrorContent - from: deploymentStacks.json - reason: Error response is inherited via allOf on flagged response. - - suppress: NoErrorCodeResponses - from: deploymentStacks.json - reason: A 400 response from the validate endpoint indicates a validation failure and should not throw an exception. - - suppress: MissingXmsErrorResponse - from: deploymentStacks.json - reason: A 400 response from the validate endpoint indicates a validation failure and should not throw an exception. - - suppress: DeleteResponseCodes - from: deploymentStacks.json - reason: Deployment stacks supports synchronous delete with 200 response. - - suppress: OperationsAPIImplementation - from: deploymentStacks.json - reason: This comes from resources.json - suppress: PathForPutOperation from: policyDefinitions.json reason: Policy definitions can be created at management group or subscriptions @@ -1705,6 +1493,21 @@ directive: from: resources.json where: $.definitions.ProviderPermissionListResult reason: "Historically some properties have not been returned for this model and reviewer said OK to suppress." + - suppress: OperationsAPIImplementation + from: Microsoft.Resources/stable/2016-02-01/resources.json + reason: Pre-existing lint error. + - suppress: OperationsAPIImplementation + from: Microsoft.Resources/stable/2016-07-01/resources.json + reason: Pre-existing lint error. + - suppress: OperationsAPIImplementation + from: Microsoft.Resources/stable/2016-09-01/resources.json + reason: Pre-existing lint error. + - suppress: OperationsAPIImplementation + from: Microsoft.Resources/stable/2017-05-10/resources.json + reason: Pre-existing lint error. + - suppress: OperationsAPIImplementation + from: Microsoft.Resources/stable/2018-02-01/resources.json + reason: Pre-existing lint error. ``` --- @@ -1753,10 +1556,6 @@ batch: - package-subscriptions: true - package-links: true - package-managedapplications: true - - package-deploymentscripts: true - - package-templatespecs: true - - package-deploymentstacks: true - package-changes: true - package-snapshots: true - - package-bicep: true ``` \ No newline at end of file diff --git a/specification/resources/resource-manager/readme.python.md b/specification/resources/resource-manager/readme.python.md index 19d64595184e..a997bcb66cea 100644 --- a/specification/resources/resource-manager/readme.python.md +++ b/specification/resources/resource-manager/readme.python.md @@ -10,6 +10,8 @@ package-version: 1.0.0b1 no-namespace-folders: true reformat-next-link: false combine-operation-files: true +modelerfour: + lenient-model-deduplication: true ``` ### Python multi-api @@ -50,6 +52,7 @@ batch: - tag: package-policy-2016-04 - tag: package-policy-2015-10 - multiapiscript-policy: true + - tag: package-resources-2025-04 - tag: package-resources-2025-03 - tag: package-resources-2024-11 - tag: package-resources-2024-07 @@ -77,18 +80,6 @@ batch: - tag: package-subscriptions-2018-06 - tag: package-subscriptions-2016-06 - multiapiscript-subscriptions: true - - tag: package-deploymentscripts-2023-08 - - tag: package-deploymentscripts-2020-10 - - tag: package-deploymentscripts-2019-10-preview - - multiapiscript-deploymentscripts: true - - tag: package-templatespecs-2022-02 - - tag: package-templatespecs-2021-05 - - tag: package-templatespecs-2021-03-preview - - tag: package-templatespecs-2019-06-preview - - multiapiscript-templatespecs: true - - tag: package-deploymentstacks-2024-03 - - tag: package-deploymentstacks-2022-08-preview - - multiapiscript-deploymentstacks: true - tag: package-changes-2022-05 - multiapiscript-changes: true - tag: package-databoundaries-2024-08 @@ -143,30 +134,6 @@ perform-load: false clear-output-folder: false ``` -```yaml $(multiapiscript-deploymentscripts) -package-name: azure-mgmt-resource#deploymentscripts -multiapiscript: true -output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/deploymentscripts -perform-load: false -clear-output-folder: false -``` - - -```yaml $(multiapiscript-templatespecs) -package-name: azure-mgmt-resource#templatespecs -multiapiscript: true -output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/templatespecs -perform-load: false -clear-output-folder: false -``` - -```yaml $(multiapiscript-deploymentstacks) -package-name: azure-mgmt-resource#deploymentstacks -multiapiscript: true -output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/deploymentstacks -perform-load: false -clear-output-folder: false -``` ```yaml $(multiapiscript-locks) package-name: azure-mgmt-resource#locks @@ -463,6 +430,17 @@ namespace: azure.mgmt.resource.policy.v2015_10_01_preview output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2015_10_01_preview ``` +### Tag: package-resources-2025-04 and python + +These settings apply only when `--tag=package-resources-2025-04 --python` is specified on the command line. Please also +specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-resources-2025-04' +default-api-version: "2025-04-01" +namespace: azure.mgmt.resource.resources.v2025_04_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2025_04_01 +``` + ### Tag: package-resources-2025-03 and python These settings apply only when `--tag=package-resources-2025-03 --python` is specified on the command line. Please also @@ -718,102 +696,11 @@ namespace: azure.mgmt.resource.subscriptions.v2016_06_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2016_06_01 ``` -### Tag: package-deploymentscripts-2019-10-preview and python - -These settings apply only when `--tag=package-deploymentscripts-2019-10-preview` is specified on the command line. -Please also specify `--python-sdks-folder=`. - -``` yaml $(tag) == 'package-deploymentscripts-2019-10-preview' -namespace: azure.mgmt.resource.deploymentscripts.v2019_10_01_preview -output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/deploymentscripts/v2019_10_01_preview -``` - -### Tag: package-deploymentscripts-2020-10 and python -These settings apply only when `--tag=package-deploymentscripts-2020-10` is specified on the command line. -Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-deploymentscripts-2020-10' -default-api-version: "2020-10-01" -namespace: azure.mgmt.resource.deploymentscripts.v2020_10_01 -output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/deploymentscripts/v2020_10_01 -``` -### Tag: package-deploymentscripts-2023-08 and python -These settings apply only when `--tag=package-deploymentscripts-2023-08` is specified on the command line. -Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-deploymentscripts-2023-08' -default-api-version: "2023-08-01" -namespace: azure.mgmt.resource.deploymentscripts.v2023_08_01 -output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/deploymentscripts/v2023_08_01 -``` -### Tag: package-templatespecs-2019-06-preview and python -These settings apply only when `--tag=package-templatespecs-2019-06-preview` is specified on the command line. -Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-templatespecs-2019-06-preview' -namespace: azure.mgmt.resource.templatespecs.v2019_06_01_preview -output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/templatespecs/v2019_06_01_preview -``` - -### Tag: package-templatespecs-2021-03-preview and python - -These settings apply only when `--tag=package-templatespecs-2021-03-preview` is specified on the command line. -Please also specify `--python-sdks-folder=`. - -``` yaml $(tag) == 'package-templatespecs-2021-03-preview' -namespace: azure.mgmt.resource.templatespecs.v2021_03_01_preview -output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/templatespecs/v2021_03_01_preview -``` - -### Tag: package-templatespecs-2021-05 and python - -These settings apply only when `--tag=package-templatespecs-2021-05` is specified on the command line. -Please also specify `--python-sdks-folder=`. - -``` yaml $(tag) == 'package-templatespecs-2021-05' -namespace: azure.mgmt.resource.templatespecs.v2021_05_01 -output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/templatespecs/v2021_05_01 -``` - -### Tag: package-templatespecs-2022-02 and python - -These settings apply only when `--tag=package-templatespecs-2022-02` is specified on the command line. -Please also specify `--python-sdks-folder=`. - -``` yaml $(tag) == 'package-templatespecs-2022-02' -default-api-version: "2022-02-01" -namespace: azure.mgmt.resource.templatespecs.v2022_02_01 -output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/templatespecs/v2022_02_01 -``` - -### Tag: package-deploymentstacks-2022-08-preview and python - -These settings apply only when `--tag=package-deploymentstacks-2022-08-preview` is specified on the command line. -Please also specify `--python-sdks-folder=`. - -``` yaml $(tag) == 'package-deploymentstacks-2022-08-preview' -default-api-version: "2022-08-01-preview" -namespace: azure.mgmt.resource.deploymentstacks.v2022_08_01_preview -output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/deploymentstacks/v2022_08_01_preview -``` - -### Tag: package-deploymentstacks-2024-03 and python - -These settings apply only when `--tag=package-deploymentstacks-2024-03` is specified on the command line. -Please also specify `--python-sdks-folder=`. - -``` yaml $(tag) == 'package-deploymentstacks-2024-03' -default-api-version: "2024-03-01" -namespace: azure.mgmt.resource.deploymentstacks.v2024_03_01 -output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/deploymentstacks/v2024_03_01 -``` - -``` yaml $(python) -modelerfour: - lenient-model-deduplication: true -``` diff --git a/specification/resources/resource-manager/readme.typescript.md b/specification/resources/resource-manager/readme.typescript.md index 58515df1b7bd..646080c41e8e 100644 --- a/specification/resources/resource-manager/readme.typescript.md +++ b/specification/resources/resource-manager/readme.typescript.md @@ -15,10 +15,8 @@ batch: - package-policy: true - package-links: true - package-managedapplications: true - - package-templatespecs: true - package-subscriptions: true - package-changes: true - - package-deploymentstacks: true - package-databoundaries: true ``` @@ -35,14 +33,6 @@ typescript: output-folder: "$(typescript-sdks-folder)/sdk/features/arm-features" ``` -```yaml $(typescript) && $(package-deploymentstacks) && !$(profile-content) -modelerfour: - flatten-models: false -typescript: - package-name: "@azure/arm-resourcesdeploymentstacks" - output-folder: "$(typescript-sdks-folder)/sdk/resourcesdeploymentstacks/arm-resourcesdeploymentstacks" -``` - ```yaml $(typescript) && $(package-locks) && !$(profile-content) typescript: package-name: "@azure/arm-locks" @@ -76,12 +66,6 @@ typescript: output-folder: "$(typescript-sdks-folder)/sdk/managedapplications/arm-managedapplications" ``` -```yaml $(typescript) && $(package-templatespecs) && !$(profile-content) -typescript: - package-name: "@azure/arm-templatespecs" - output-folder: "$(typescript-sdks-folder)/sdk/templatespecs/arm-templatespecs" -``` - ```yaml $(typescript) && $(package-subscriptions) && !$(profile-content) typescript: package-name: "@azure/arm-resources-subscriptions"