{ "swagger": "2.0", "info": { "title": "ComputeManagementConvenienceClient", "version": "2015-11-01" }, "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}": { "put": { "tags": [ "Deployments" ], "operationId": "VirtualMachines_QuickCreate", "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\\._]+$" }, { "name": "deploymentName", "in": "path", "required": true, "type": "string", "description": "The name of the deployment." }, { "name": "parameters", "in": "body", "required": false, "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 } } }, "definitions": { "TemplateLink": { "required": [ "uri" ], "properties": { "uri": { "type": "string", "description": "URI referencing the template.", "enum": [ "https://raw.githubusercontent.com/stankovski/azure-rest-api-specs/master/arm-compute/quickstart-templates/vm-simple-linux.json" ] } }, "description": "Entity representing the reference to the template." }, "DeploymentProperties": { "required": [ "templateLink", "mode" ], "properties": { "templateLink": { "$ref": "#/definitions/TemplateLink", "description": "Gets or sets the URI referencing the template. Use only one of Template or TemplateLink." }, "parameters": { "x-ms-client-flatten": true, "description": "Deployment parameters. Use only one of Parameters or ParametersLink.", "$ref": "#/definitions/DeploymentParameters" }, "mode": { "type": "string", "description": "Gets or sets the deployment mode.", "enum": [ "Incremental" ] } }, "description": "Deployment properties." }, "Deployment": { "properties": { "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/DeploymentProperties", "description": "Gets or sets the deployment properties." } }, "description": "Deployment operation parameters." }, "DeploymentParameters": { "properties": { "adminUsername": { "x-ms-client-flatten": true, "type": "object", "required": [ "value" ], "properties": { "value": { "type": "string", "description": "Username for the Virtual Machine." } } }, "adminPassword": { "x-ms-client-flatten": true, "type": "object", "required": [ "value" ], "properties": { "value": { "type": "string", "format": "password", "description": "Password for the Virtual Machine." } } }, "dnsLabelPrefix": { "x-ms-client-flatten": true, "type": "object", "required": [ "value" ], "properties": { "value": { "type": "string", "description": "Unique DNS Name for the Public IP used to access the Virtual Machine." } } }, "osVersion": { "x-ms-client-flatten": true, "type": "object", "required": [ "value" ], "properties": { "value": { "type": "string", "default": "14.04.2-LTS", "description": "The OS version for the VM. This will pick a fully patched image of this given OS version.", "enum": [ "12.04.5-LTS", "14.04.2-LTS", "15.10" ] } }, "description": "Deployment operation parameters." } } }, "DeploymentExtended": { "properties": { "id": { "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" ], "description": "Deployment 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 } } }, "description": "Deployment properties with additional details." }, "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." }, "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." }, "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." }, "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." }, "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." } }, "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." } } }